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 |
POJ 我对你太不了解了 !!!!!!!!!下面是我的代码,其中第六行是个根本没用的数组,但不加它就WA 加了就AC 害得我找错找了半天,当我把从2到10000的所有数全比较一遍后都没发现错误!!!!! Run ID 4048280 AC Run ID 4048288 WA #include <stdio.h> #include <iostream> using namespace std; #define N 700 int a[N],sum[N]; //int x[10000]; // 就是这个数组,根本就没用,但加上就AC 不加就WA int main() { int i,j,k,n,count; a[0]=2,a[1]=3; sum[0]=0,sum[1]=2,sum[2]=5; i=k=2; while(i<N) { ++k; for(j=0;j<i;++j) if(k%a[j]==0) break; if(j==i) { a[i]=k; sum[i+1]=sum[i]+k; ++i; } } while(scanf("%d",&n)&&n) { i=count=0; while( n>a[i] && n%a[i] && i<50 ) ++i; if(a[i]>=n || i==50) ++count; k=0; while(sum[k]<n) ++k; k+=2; while(k>2) { --k; i=0; while(sum[k+i]-sum[i]<n) ++i; if( sum[k+i]-sum[i]==n ) count++; } cout<<count<<endl; } return 0; } Followed by:
Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator