题目:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=79052
代码:
#include<stdio.h> #include<string.h> #include<algorithm> #include<stdlib.h> using namespace std; int main() { int n,m; while(~scanf("%d%d",&n,&m)) { int a[20],b[20]; for(int i=0; i<n; i++) { scanf("%d",&a[i]); } for(int j=0; j<m; j++) { scanf("%d",&b[j]); } int base1[20],base2[20]; int temp=1,k=0; for(int i=0; i<n; i=i+b[k++]) { for(int j=i; j<i+b[k]; j++) { if(temp==1) base1[j]=1; if(temp==0) base1[j]=0; } if(temp==1) temp=0; else if(temp==0) temp=1; } temp=0; k=0; for(int i=0; i<n; i=i+b[k++]) { for(int j=i; j<i+b[k]; j++) { if(temp==1) base2[j]=1; if(temp==0) base2[j]=0; } if(temp==1) temp=0; else if(temp==0) temp=1; } /*for(int i=0;i<n;i++) { printf("%d ",base1[i]); } printf("\n"); for(int i=0;i<n;i++) { printf("%d ",base2[i]); }*/ int ans1=0; int ans2=0; int ans3=0; int flag1=0; int flag2=0; int flag3=0; int ui1[20]; int ui2[20]; int ui3[20]; int num=0; for(int i=0; i<n; i++) { if(a[i]==1) { ans1=ans1+i; flag1++; ui1[num++]=i; } } num=0; for(int i=0; i<n; i++) { if(base1[i]==1) { ans2=ans2+i; flag2++; ui2[num++]=i; } } num=0; for(int i=0; i<n; i++) { if(base2[i]==1) { ans3=ans3+i; flag3++; ui3[num++]=i; } } /*printf("\n"); printf("%d %d %d %d %d %d\n",ans1,ans2,ans3,flag1,flag2,flag3); if(flag1==flag2&&flag1==flag3) printf("%d\n",min(abs(ans2-ans1),abs(ans3-ans1))); else if(flag1==flag2) printf("%d\n",abs(ans2-ans1)); else if(flag1==flag3) printf("%d\n",abs(ans3-ans1));*/ //printf("\n"); if(flag1==flag2&&flag1==flag3) { int ans1=0,ans2=0; for(int i=0;i<flag1;i++) { ans1=ans1+abs(ui1[i]-ui2[i]); ans2=ans2+abs(ui1[i]-ui3[i]); } printf("%d\n",min(ans1,ans2)); } else if(flag1==flag2) { int ans1=0; for(int i=0;i<flag1;i++) { ans1=ans1+abs(ui1[i]-ui2[i]); } printf("%d\n",ans1); } else if(flag1==flag3) { int ans1=0; for(int i=0;i<flag1;i++) { //printf("%d %d\n",ui1[i],ui2[i]); ans1=ans1+abs(ui1[i]-ui3[i]); } printf("%d\n",ans1); } } } /* 13 7 0 0 0 1 0 1 0 1 0 0 1 1 0 //3 5 7 10 11 0 0 0 0 0 1 1 1 0 1 0 1 0 //5 6 7 9 11 1 1 1 1 1 0 0 0 1 0 1 0 1 */
上了大学,下定决心改掉懒惰,改掉骄傲。他妈的,学了一年acm。和周围的人差距越来越大。
唯上智与下愚不移。这不移需要太大的勇气了。
like a joke!