codeforces 814B An express train to reveries(思维)
来源:互联网 发布:python splinter 安装 编辑:程序博客网 时间:2024/05/14 12:10
给两个数组(元素为1-n)a, b求一个数组c 使a,与b中的元素与c 恰好只有一个元素不同,思维的精简度,直接求出a中重复的那个元素,用没出现的元素代替
判断是否满足条件即可,不可能出现没有重复的情况因为这样会导致要改的元素不止一个;。。。写题目前一定要把问题想清楚,不要急着下手
#include<cstdio>#include<cstdlib>#include<cstring>#include<iostream>#include<cmath>#include <bits/stdc++.h>using namespace std;const int N = 3e5+10;typedef long long LL;int a[N], b[N],p1[N], p2[N], v1[N], v2[N];int l1=0,l2=0;int main(){ int n; scanf("%d", &n); memset(v1,0,sizeof(v1)); memset(v2,0,sizeof(v2)); for(int i=1; i<=n; i++) { scanf("%d", &a[i]); v1[a[i]]++; } int k1=0, k2=0; for(int i=1; i<=n; i++) { if(v1[i]==0) l1=i; if(v1[i]>1) l2=i; } for(int i=1;i<=n;i++) { if(v1[a[i]]>1) p1[k1++]=i; } for(int i=1; i<=n; i++) scanf("%d", &b[i]); int h1=p1[0], h2=p1[1], cnt=0; a[h1]=l1; for(int i=1;i<=n;i++) { if(a[i]!=b[i]) cnt++; } if(cnt==1) { for(int i=1; i<=n; i++) printf("%d%c",a[i],i==n?'\n':' '); return 0; } a[h1]=a[h2]; a[h2]=l1; for(int i=1; i<=n; i++) printf("%d%c",a[i],i==n?'\n':' '); return 0;}
阅读全文
0 0
- codeforces 814B An express train to reveries(思维)
- codeforces B. An express train to reveries
- 【Codeforces 814 B. An express train to reveries】+ 构造
- codeforces 814B An express train to reveries
- codeforces 814B An express train to reveries
- Codeforces 814B-An express train to reveries
- Codeforces 814 B An express train to reveries
- codeforces 814 B An express train to reveries
- CodeForces 814B An express train to reveries
- codeforces An express train to reveries 814B
- CodeForces-814B An express train to reveries 解题报告
- 814/ B. An express train to reveries
- Codeforces Round #418 (Div. 2)-B. An express train to reveries-思维
- Codeforces Round #418 B--An express train to reveries
- An express train to reveries CodeForces
- B. An express train to reveries
- An express train to reveries
- An express train to reveries
- MAVEN初探
- 5.0的Material ProgressBar颜色修改方案
- 舞步学院PUA就是个坑,大家千万不要信
- samtools使用大全
- PHP几个防SQL注入攻击自带函数区别
- codeforces 814B An express train to reveries(思维)
- git配置
- 安卓四大组件三之-broadcastreceiver
- 转载 经过操作 基本成功 可以跳出两个不同端口的tomcat页面
- 二进制BinaryFormatter 泛型 序列化与反序列化 (保存文件到本地和读取)
- 友盟社会化分享 QQ空间不显示分享的图片 (已解决)
- Linux下根据进程的名字杀死进程
- Leetcode——Target Sum
- 十分钟搞定pandas(Python数据预处理库)