結果

問題 No.437 cwwゲーム
コンテスト
ユーザー testestest
提出日時 2016-10-29 04:10:50
言語 C90(gcc12)
(gcc 12.4.0)
コンパイル:
gcc-12 -O2 -std=c90 -DONLINE_JUDGE -o a.out _filename_ -lm
実行:
./a.out
結果
AC  
実行時間 4 ms / 2,000 ms
コード長 396 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 181 ms
コンパイル使用メモリ 30,404 KB
最終ジャッジ日時 2026-02-23 22:44:29
ジャッジサーバーID
(参考情報)
judge1 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 41
権限があれば一括ダウンロードができます
コンパイルメッセージ
main.c:3:1: warning: data definition has no type or storage class
    3 | ans;
      | ^~~
main.c: In function ‘main’:
main.c:19:1: warning: incompatible implicit declaration of built-in function ‘printf’ [-Wbuiltin-declaration-mismatch]
   19 | printf("%d",ans);
      | ^~~~~~
main.c:1:1: note: include ‘<stdio.h>’ or provide a declaration of ‘printf’
  +++ |+#include <stdio.h>
    1 | #define max(p,q)p<q?p=q:0
/usr/bin/ld: /tmp/ccKn2MMK.o: in function `main':
main.c:(.text.startup+0x12): 警告: the `gets' function is dangerous and should not be used.

ソースコード

diff #
raw source code

#define max(p,q)p<q?p=q:0
char s[99];
ans;

f(sum,used){
int i,j,k,newsum;
for(i=0;s[i];i++){if(used>>i&1||s[i]=='0')continue;
for(j=i+1;s[j];j++){if(used>>j&1||s[i]==s[j])continue;
for(k=j+1;s[k];k++){if(used>>k&1||s[j]!=s[k])continue;
newsum=sum+(s[i]-'0')*100+(s[j]-'0')*10+s[k]-'0';
max(ans,newsum);
f(newsum,used^1<<i^1<<j^1<<k);
}}}
}

main(){
gets(s);
f(0,0);
printf("%d",ans);
return 0;
}
0