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 |
无限WA。。。求大神帮看。。上代码: #include <iostream> #include <cstdio> using namespace std; int C[33][33],bin[35]; int calc(int n){ int num0=0,sum=0,i,j; bin[0]=0; while(n){ bin[++bin[0]]=n&1; n>>=1; } for(i=1;i<bin[0]-1;i++) for(j=(i>>1)+1;j<=i;j++) sum+=C[i][j]; for(i=bin[0]-1;i>=1;i--) if(bin[i]) for(j=(bin[0]+1>>1)-num0-1;j<i;j++) sum+=C[i-1][j]; else num0++; return sum; } int main(){ int t,w,i,j; for(i=0;i<=32;i++) for(j=0;j<=i;j++) if(!j || i==j) C[i][j]=1; else C[i][j]=C[i-1][j-1]+C[i-1][j]; cin>>t>>w; cout<<calc(w+1)-calc(t)<<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