Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
Re:终于不打表AC,282ms,放出代码,求更快的解法……In Reply To:终于不打表AC,282ms,放出代码,求更快的解法…… Posted by:alexneko at 2008-07-12 16:14:45 #include <stdio.h> #include <string.h> int main() { int arr[15]; memset(arr,0,15*sizeof(int)); while(1) { int k,m=0; scanf("%d",&k); if(k==0)break; m=k+1; if(arr[k]==0) { while(1) { int bad=k*2,now=0; while(1) { now=(now+m-1)%bad+1; if(now>k) { bad--; now--; } else break; } if(bad==k){arr[k]=m;break;} if(m%(k+1)) m+=k; else m++; } } printf("%d\n",arr[k]); } } 63MS Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator