CodeForces
来源:互联网 发布:淘宝用户积分查询 编辑:程序博客网 时间:2024/06/03 10:47
Sengoku still remembers the mysterious "colourful meteoroids" she discovered with Lala-chan when they were little. In particular, one of the nights impressed her deeply, giving her the illusion that all her fancies would be realized.
On that night, Sengoku constructed a permutation p1, p2, ..., pn of integers from 1 to n inclusive, with each integer representing a colour, wishing for the colours to see in the coming meteor outburst. Two incredible outbursts then arrived, each with n meteorids, colours of which being integer sequences a1, a2, ..., an and b1, b2, ..., bnrespectively. Meteoroids' colours were also between 1 and n inclusive, and the two sequences were not identical, that is, at least one i (1 ≤ i ≤ n) exists, such that ai ≠ bi holds.
Well, she almost had it all — each of the sequences a and b matched exactly n - 1 elements in Sengoku's permutation. In other words, there is exactly one i (1 ≤ i ≤ n) such that ai ≠ pi, and exactly one j (1 ≤ j ≤ n) such that bj ≠ pj.
For now, Sengoku is able to recover the actual colour sequences a and b through astronomical records, but her wishes have been long forgotten. You are to reconstruct any possible permutation Sengoku could have had on that night.
The first line of input contains a positive integer n (2 ≤ n ≤ 1 000) — the length of Sengoku's permutation, being the length of both meteor outbursts at the same time.
The second line contains n space-separated integers a1, a2, ..., an (1 ≤ ai ≤ n) — the sequence of colours in the first meteor outburst.
The third line contains n space-separated integers b1, b2, ..., bn (1 ≤ bi ≤ n) — the sequence of colours in the second meteor outburst. At least one i (1 ≤ i ≤ n) exists, such that ai ≠ bi holds.
Output n space-separated integers p1, p2, ..., pn, denoting a possible permutation Sengoku could have had. If there are more than one possible answer, output any one of them.
Input guarantees that such permutation exists.
51 2 3 4 31 2 5 4 5
1 2 5 4 3
54 4 2 3 15 4 5 3 1
5 4 2 3 1
41 1 3 41 4 3 4
1 2 3 4
题目大概:
给出两组序列,输出和两组序列差别都不超过1个数字的序列,并且该序列没有重复数字。
思路:
暴力搜索,模拟,不断更新一个位置数字,直到找到符合条件的序列。
代码:
#include <iostream>#include <cstring>#include <cstdio>using namespace std;int n;int a[1002],q[1002];int b[1002],map[1002];int main(){while(cin>>n){ for(int i=1;i<=n;i++) { cin>>a[i]; } for(int i=1;i<=n;i++) { cin>>b[i]; } for(int i=1;i<=n;i++) { memset(map,0,sizeof(map)); int f=0; for(int j=1;j<=n;j++) { if(i==j)continue; map[a[j]]++; q[j]=a[j]; if(map[a[j]]>1)f=1; } if(f)continue; for(int j=1;j<=n;j++) { if(!map[j]){q[i]=j;break;} } int sum=0; for(int j=1;j<=n;j++) { if(b[j]!=q[j])sum++; } if(sum==1)break; } for(int i=1;i<=n;i++) { cout<<q[i]; if(i!=n)cout<<" "; } cout<<endl;} return 0;}
- codeforces~~~
- Codeforces
- codeforces
- Codeforces
- codeforces
- codeforces
- Codeforces
- Codeforces
- CodeForces
- CodeForces
- CodeForces
- CodeForces
- CodeForces
- Codeforces
- Codeforces
- Codeforces
- Codeforces
- Codeforces
- 洛谷P1196银河英雄传说
- 剑指offer-把二叉树打印成多行
- TopK问题
- 切木棒(贪心&&优先队列)
- 链表
- CodeForces
- Java多线程编程实战指南(核心篇)读书笔记(二)
- python爬虫学习第十天
- 数组排序之冒泡排序
- PCBA
- c语言链表的实现、链表部分面试题的解答
- ACM集训日记-8月3日
- Server Tomcat v7.0 Server at localhost was unable to start within 45 seconds
- String的indexOf(),lastIndexOf(),substring(int x),substring(int x , int y)方法 StringBuffer