結果
問題 |
No.437 cwwゲーム
|
ユーザー |
![]() |
提出日時 | 2016-10-30 13:45:30 |
言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
結果 |
AC
|
実行時間 | 10 ms / 2,000 ms |
コード長 | 792 bytes |
コンパイル時間 | 1,227 ms |
コンパイル使用メモリ | 158,080 KB |
実行使用メモリ | 5,248 KB |
最終ジャッジ日時 | 2024-10-12 08:34:13 |
合計ジャッジ時間 | 2,388 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 41 |
ソースコード
#include <bits/stdc++.h> #define MOD 1000000007 using namespace std; typedef long long ll; typedef pair<int,int> ii; int used[20]; string s; int tkn; int dfs(){ if(s.length()-tkn<3) return 0; int best=0; for(int ctr1=0;ctr1<s.length();ctr1++) for(int ctr2=ctr1+1;ctr2<s.length();ctr2++) for(int ctr3=ctr2+1;ctr3<s.length();ctr3++) if(!used[ctr1] && !used[ctr2] && !used[ctr3] && s[ctr1]!='0' && s[ctr1]!=s[ctr2] && s[ctr2]==s[ctr3]){ used[ctr1] = used[ctr2] = used[ctr3] = 1; best=max(best,(s[ctr1]-'0')*100+(s[ctr2]-'0')*10+(s[ctr3]-'0')+dfs()); used[ctr1] = used[ctr2] = used[ctr3] = 0; } return best; } int main() { cin>>s; cout<<dfs(); }