結果
問題 |
No.230 Splarraay スプラレェーイ
|
ユーザー |
![]() |
提出日時 | 2017-02-01 23:54:41 |
言語 | C90 (gcc 12.3.0) |
結果 |
RE
|
実行時間 | - |
コード長 | 1,189 bytes |
コンパイル時間 | 268 ms |
コンパイル使用メモリ | 21,760 KB |
実行使用メモリ | 5,248 KB |
最終ジャッジ日時 | 2024-12-24 02:22:18 |
合計ジャッジ時間 | 5,591 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | RE * 3 |
other | RE * 17 |
コンパイルメッセージ
main.c:1:1: warning: data definition has no type or storage class 1 | x,l,r;m[1<<18][2],A,B; | ^ main.c:1:1: warning: type defaults to ‘int’ in declaration of ‘x’ [-Wimplicit-int] main.c:1:3: warning: type defaults to ‘int’ in declaration of ‘l’ [-Wimplicit-int] 1 | x,l,r;m[1<<18][2],A,B; | ^ main.c:1:5: warning: type defaults to ‘int’ in declaration of ‘r’ [-Wimplicit-int] 1 | x,l,r;m[1<<18][2],A,B; | ^ main.c:1:7: warning: data definition has no type or storage class 1 | x,l,r;m[1<<18][2],A,B; | ^ main.c:1:7: warning: type defaults to ‘int’ in declaration of ‘m’ [-Wimplicit-int] main.c:1:19: warning: type defaults to ‘int’ in declaration of ‘A’ [-Wimplicit-int] 1 | x,l,r;m[1<<18][2],A,B; | ^ main.c:1:21: warning: type defaults to ‘int’ in declaration of ‘B’ [-Wimplicit-int] 1 | x,l,r;m[1<<18][2],A,B; | ^ main.c:2:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 2 | f(i,k){ | ^ main.c: In function ‘f’: main.c:2:1: warning: type of ‘i’ defaults to ‘int’ [-Wimplicit-int] main.c:2:1: warning: type of ‘k’ defaults to ‘int’ [-Wimplicit-int] main.c: At top level: main.c:11:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 11 | g(i){ | ^ main.c: In function ‘g’: main.c:11:1: warning: type of ‘i’ defaults to ‘int’ [-Wimplicit-int] main.c: At top level: main.c:15:1: warning: return type defaults to ‘int’ [-Wimplicit-int] 15 | main(i,j,k){ | ^~~~ main.c: In function ‘main’: main.c:15:1: warning: type of ‘i’ defaults to ‘int’ [-Wimplicit-int] main.c:15:1: warning: type of ‘j’ defaults to ‘int’ [-Wimplicit-int] main.c:15:1: warning: type of ‘k’ defaults to ‘int’ [-Wimplicit-int] main.c:16:13: warning: implicit declaration of function ‘gets’ [-Wimplicit-function-declaration] 16 | for(gets(ge
ソースコード
x,l,r;m[1<<18][2],A,B; f(i,k){ if(m[i][0]==2<<k){ m[i<<1|0][0]=m[i][0]>>1; m[i<<1|1][0]=m[i][0]>>1; }else if(m[i][1]==2<<k){ m[i<<1|0][1]=m[i][1]>>1; m[i<<1|1][1]=m[i][1]>>1; } } g(i){ m[i][0]=m[i<<1|0][0]+m[i<<1|1][0]; m[i][1]=m[i<<1|0][1]+m[i<<1|1][1]; } main(i,j,k){ for(gets(gets(&x));~scanf("%d%d%d",&x,&l,&r);){ if(x--){ for(i=j=1,k=17;k--;){ f(i,k); if(i!=j){ f(j,k); if((l>>k&1)==0){ m[i<<1|1][x]=1<<k;m[i<<1|1][!x]=0; } if((r>>k&1)==1){ m[j<<1|0][x]=1<<k;m[j<<1|0][!x]=0; } } i=i<<1|l>>k&1; j=j<<1|r>>k&1; } m[i][x]=1;m[i][!x]=0; m[j][x]=1;m[j][!x]=0; for(;++k<17;){ i>>=1; j>>=1; g(i); if(i!=j)g(j); } }else{ A=B=0; for(i=j=1,k=17;k--;){ f(i,k); if(i!=j){ f(j,k); if((l>>k&1)==0){ A+=m[i<<1|1][0];B+=m[i<<1|1][1]; } if((r>>k&1)==1){ A+=m[j<<1|0][0];B+=m[j<<1|0][1]; } } i=i<<1|l>>k&1; j=j<<1|r>>k&1; } A+=m[i][0];B+=m[i][1]; if(i!=j){ A+=m[j][0];B+=m[j][1]; } if(A>B){ m[0][0]+=A; }else if(A<B){ m[0][1]+=B; } } } x=!printf("%d %d\n",m[0][0]+m[1][0],m[0][1]+m[1][1]); }