結果

問題 No.130 XOR Minimax
ユーザー testestesttestestest
提出日時 2015-12-02 22:36:47
言語 C90
(gcc 11.4.0)
結果
AC  
実行時間 25 ms / 5,000 ms
コード長 323 bytes
コンパイル時間 266 ms
コンパイル使用メモリ 24,376 KB
実行使用メモリ 4,356 KB
最終ジャッジ日時 2023-10-10 00:10:29
合計ジャッジ時間 1,696 ms
ジャッジサーバーID
(参考情報)
judge15 / judge12
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 13 ms
4,348 KB
testcase_01 AC 0 ms
4,352 KB
testcase_02 AC 0 ms
4,348 KB
testcase_03 AC 1 ms
4,352 KB
testcase_04 AC 11 ms
4,352 KB
testcase_05 AC 17 ms
4,352 KB
testcase_06 AC 14 ms
4,348 KB
testcase_07 AC 18 ms
4,348 KB
testcase_08 AC 18 ms
4,352 KB
testcase_09 AC 5 ms
4,348 KB
testcase_10 AC 7 ms
4,352 KB
testcase_11 AC 22 ms
4,348 KB
testcase_12 AC 3 ms
4,352 KB
testcase_13 AC 17 ms
4,348 KB
testcase_14 AC 25 ms
4,352 KB
testcase_15 AC 1 ms
4,348 KB
testcase_16 AC 18 ms
4,352 KB
testcase_17 AC 18 ms
4,352 KB
testcase_18 AC 19 ms
4,352 KB
testcase_19 AC 24 ms
4,352 KB
testcase_20 AC 12 ms
4,348 KB
testcase_21 AC 25 ms
4,352 KB
testcase_22 AC 5 ms
4,352 KB
testcase_23 AC 2 ms
4,356 KB
権限があれば一括ダウンロードができます
コンパイルメッセージ
main.c:1:1: warning: data definition has no type or storage class
 a[100000];
 ^
main.c:1:1: warning: type defaults to ‘int’ in declaration of ‘a’ [-Wimplicit-int]
main.c:2:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 c(int*a,int*b){return*a-*b;}
 ^
main.c:4:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 x(int*a,int n,int i){
 ^
main.c:12:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
 main(n){
 ^~~~
main.c: In function ‘main’:
main.c:12:1: warning: type of ‘n’ defaults to ‘int’ [-Wimplicit-int]
main.c:13:11: warning: implicit declaration of function ‘scanf’ [-Wimplicit-function-declaration]
 for(n=-2;~scanf("%d",++n+a););
           ^~~~~
main.c:13:11: warning: incompatible implicit declaration of built-in function ‘scanf’
main.c:13:11: note: include ‘<stdio.h>’ or provide a declaration of ‘scanf’
main.c:1:1:
+#include <stdio.h>
 a[100000];
main.c:13:11:
 for(n=-2;~scanf("%d",++n+a););
           ^~~~~
main.c:14:1: warning: implicit declaration of function ‘qsort’ [-Wimplicit-function-declaration]
 qsort(a,n,4,c);
 ^~~~~
main.c:15:9: warning: implicit declaration of function ‘printf’ [-Wimplicit-function-declaration]
 return !printf("%d",x(a,n,29));
         ^~~~~~
main.c:15:9: warning: incompatible implicit declaration of built-in function ‘printf’
main.c:15:9: note: include ‘<stdio.h>’ or provide a declaration of ‘printf’

ソースコード

diff #

a[100000];
c(int*a,int*b){return*a-*b;}

x(int*a,int n,int i){
if(i==-1)return 0;
if(~(*a^a[n-1])>>i&1)return x(a,n,i-1);
int l=0,u=n,m;
for(;u-l>1;a[m=(l+u)/2]>>i&1?u=m:(l=m));
return 1<<i|(l=x(a,u,i-1),l<(m=x(a+u,n-u,i-1))?l:m);
}

main(n){
for(n=-2;~scanf("%d",++n+a););
qsort(a,n,4,c);
return !printf("%d",x(a,n,29));
}
0