标签:
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 4448 Accepted Submission(s):
2718
#include<stdio.h> #include<math.h> #include<string.h> #include<stack> #include<queue> #include<map> #include<vector> #define MAX 100010 #define LL long long #define INF 0xfffffff #define fab(x) (x)>0?(x):(-x) #define mem(x) memset(x,0,sizeof(x)) #define PI acos(-1) #include<iostream> #include<algorithm> using namespace std; int main() { int n,m,j,i,t; int s[MAX],s1[MAX]; while(scanf("%d",&n),n) { for(i=1;i<=n;i++) { scanf("%d",&s[i]); s1[i]=s[i]; } int flag=1; int ans=0; int ant=0; while(flag) { ans++; s[1]=s1[n]/2+s1[1]/2; if(s[1]&1) s[1]+=1; //s1[1]=s[1]; for(i=2;i<=n;i++) { s[i]=s1[i-1]/2+s1[i]/2; if(s[i]&1) s[i]+=1; //s1[i]=s[i]; } for(i=1;i<=n;i++) s1[i]=s[i]; // for(i=1;i<=n;i++) // { // printf("%d# ",s[i]); // } // printf("\n"); int k=0; for(i=1;i<n;i++) { if(s[i]==s[i+1]) k++; else break; } for(i=1;i<=n;i++) printf("%d ",s[i]); printf("\n"); if(s[1]==s[n]) k++; if(k==n) { flag=0; ant=s[1]; } } printf("%d %d\n",ans,ant); } return 0; }
标签:
原文地址:http://www.cnblogs.com/tonghao/p/5030638.html