Codeforces Round #134 (Div. 2)
2014-04-08 12:53
281 查看
A. Mountain Scenery
B.
Airport
C.
Ice Skating
#include <iostream> #include <cstdio> using namespace std; int main() { int n,k,i,m,mon[250]; while(~scanf("%d%d",&n,&k)) { for(i=1;i<=2*n+1;i++) scanf("%d",&mon[i]); for(i=2,m=0;i<=2*n;i=i+2) { if(mon[i]-mon[i-1]>=2&&mon[i]-mon[i+1]>=2) {mon[i]--;m++;} if(m==k) break; } for(i=1;i<=2*n+1;i++) cout<<mon[i]<<" "; cout<<endl; } return 0; }
B.
Airport
#include <iostream> #include <cstdio> #include <algorithm> using namespace std; bool cmp1(int a,int b) { return a>b; } bool cmp2(int a,int b) { return a<b; } int main() { int n,m,N,air[1005],air1[1005],i,j,Max,Min; while(~scanf("%d%d",&n,&m)) { for(i=0;i<m;i++) {scanf("%d",&air[i]);air1[i]=air[i];} Max=0;Min=0;N=n; while(N>0) { sort(air,air+m,cmp1); Max+=air[0]; air[0]--; N--; } N=n; while(N>0) { sort(air1,air1+m,cmp2); for(j=0;j<m;j++) if(air1[j]!=0) { Min+=air1[j]; air1[j]--; break; } N--; } cout<<Max<<" "<<Min<<endl; } return 0; }
C.
Ice Skating
#include <iostream> #include <cstdio> #include <cstring> using namespace std; struct point { int x; int y; }p[1005]; int n; int father[1005]; int Find(int x) { return x==father[x] ? x : father[x]=Find(father[x]); } int main() { int i,j,ans; while(~scanf("%d",&n)&&n) { memset(father,0,sizeof(father)); for(i=0;i<n;i++) { scanf("%d%d",&p[i].x,&p[i].y); father[i]=i; } for(i=0;i<n;i++) { for(j=i+1;j<n;j++) { if(p[i].x==p[j].x||p[i].y==p[j].y) { if(Find(i)!=Find(j)) father[Find(i)]=j; } } } for(i=0,ans=0;i<n;i++) { if(father[i]==i) ans++; } cout<<ans-1<<endl; } return 0; }
相关文章推荐
- Codeforces Round #134 (Div. 2)A. Mountain Scenery
- Codeforces Round #134 (Div. 2)B. Airport
- Codeforces Round #134 (Div. 2)C. Ice Skating
- Codeforces Round #134 (Div. 2)A. Mountain Scenery(简单)
- Codeforces Round #134 (Div. 2)A. Mountain Scenery(简单)
- Codeforces Round #134 (Div. 2) 并查集
- Codeforces Round #134 (Div. 2)
- Codeforces Round #134 (Div. 2)
- Codeforces Round #134 (Div. 2) A. Mountain Scenery
- Codeforces Round 134 div 2 C题
- Codeforces Round #134 (Div. 2) A_B_C_D题
- Codeforces Round #134 (Div. 2) B. Airport
- Codeforces Round #134 (Div. 2)
- Codeforces Round #134 (Div. 2)——B
- Codeforces Round #134 (Div. 2) C. Ice Skating
- Codeforces Round #134 (Div. 2)
- 并查集Codeforces Round #134 (Div. 1), problem: (A) Ice Skating
- Codeforces Round #205 (Div. 2)
- Codeforces Round #427 (Div. 2) A. Key races B. The number on the board C. Star sky
- Codeforces Round #343 (Div. 2) B. Far Relative’s Problem (贪心)