Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- using namespace std;
- int n,t[500005],a;
- int f(int x)
- {
- if(t[x]==x)
- return x;
- t[x]=f(t[x]);
- return t[x];
- }
- void add(int x,int y)
- {
- if(f(x)!=f(y))
- {
- t[f(x)]=f(y);
- }
- }
- void make()
- {
- for(int i=1;n+1>=i;i++)
- t[i]=i;
- }
- int main()
- {
- scanf("%d",&n);
- make();
- for(int i=0;n>i;i++)
- {
- scanf("%d",&a);
- add(a,a+1);
- if(f(a)==n+1)
- printf("NIE\n");
- else
- printf("%d\n",f(a));
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement