Codeforces 201(DIV2)B
2014-04-30 18:34
274 查看
思路:a[i] = k,且a[k] = i,即i==a[a[i]](k与i不相等)则可增加2,否则若sum!=n,则必增加1.
#include<stdio.h> #include<math.h> int a[100001]; int main() { int n,i,sum,flag,flag1,p; while(~scanf("%d",&n)) { p = flag = flag1 = sum = 0; for(i = 0;i < n;i ++) { scanf("%d",&a[i]); if(i==a[i]) sum++; } if(sum!=n) flag1 = 1; for(i = 0;i < n;i ++) { if(a[a[i]]==i&&a[i]!=i) { flag = 1; break ; } } if(!(flag+flag1)) printf("%d\n",sum); if(flag==1) { printf("%d\n",sum+2); continue ; } if(flag==0&&flag1==1) printf("%d\n",sum+1); }
相关文章推荐
- Codeforces 201(DIV2)B
- codeforces round 201 div2解题报告
- Codeforces 591 B Rebranding【Codeforces Round #327 (Div. 2)】
- 第二十一次codeforces竞技结束 #277 Div 2
- 【codeforces 434 div 1 A】Did you mean...
- CodeForces Div124-1 hrbust 1474 哈理工oj 求字典序最大的子串【贪心】
- Codeforces-425 (Div. 2)-D(最近公共祖先->倍增)
- Codeforces 716B Complete the Word【模拟】 (Codeforces Round #372 (Div. 2))
- CodeForces:#448 div2 B. XK Segments
- codeforces #310 div2 D 分类: codeforces 2015-06-29 20:03 29人阅读 评论(0) 收藏
- codeforces 204(Div.1 A) Little Elephant and Interval(贪心)
- 【codeforces】Codeforces Round #283 (Div. 2) 【题解】
- CodeForces 498A Round #284 div1A(div2C) Crazy Town
- CodeForces 833B Round#426 Div1B&Div2D The Bakery: DP+线段树
- Codeforces 450(#257 (Div. 2) ) 解题报告
- Codeforces 208 div2 D. Dima and Hares
- 【codeforces div2 A】Calculating Function(思维)
- 【codeforces】Codeforces Round #277 (Div. 2) 解读
- 【Codeforces】 Round #374 (Div. 2)
- Codeforces Round #347 (Div. 2) B. Rebus (codeforces 664b) (构造)