萌新求助85pts

P5657 [CSP-S2019] 格雷码

是不是评测姬有问题
by lu_run_ting @ 2020-04-20 20:44:26


希望更丰富的展现?使用Markdown
by lu_run_ting @ 2020-04-20 20:46:23


可是我似乎看不懂这个代码(我谔谔
by lu_run_ting @ 2020-04-20 20:46:49


@[lu_run_ting](/user/54770) ```cpp #include<bits/stdc++.h> using namespace std; struct num{ int a[40]; }; num a; char s[40]; int n,k[70]; num operator /(const num &x,const int &y) { num z; memset(z.a,0,sizeof(z.a)); z.a[0]=x.a[0]; for(int i=1;i<=x.a[0];i++)z.a[i]=x.a[i]; for(int i=z.a[0];i>0;i--) { if(i>1)z.a[i-1]+=(z.a[i]%y)*10; z.a[i]/=y; } while(z.a[0]>1&&z.a[z.a[0]]==0)--z.a[0]; return z; } void work() { printf("%d",k[n]); if(n==1)return; if(k[n])for(int i=1;i<n;i++)k[i]^=1; --n,work(); } int main() { scanf("%d%s",&n,s); a.a[0]=strlen(s); for(int i=1;i<=a.a[0];i++)a.a[i]=s[a.a[0]-i]-'0'; for(int i=1;i<=n;i++) { k[i]=a.a[1]&1; a=a/2; } work(); return 0; }
by JROI官方账号 @ 2020-04-20 20:48:39


k=-1-k+pow(2,n)
by JRzyh @ 2020-04-20 20:49:12


@[lu_run_ting](/user/54770)
by JRzyh @ 2020-04-20 20:49:47


上一页 |