結果

問題 No.437 cwwゲーム
ユーザー srup٩(๑`н´๑)۶
提出日時 2016-10-28 23:10:21
言語 C++11(廃止可能性あり)
(gcc 13.3.0)
結果
TLE  
実行時間 -
コード長 1,252 bytes
コンパイル時間 1,099 ms
コンパイル使用メモリ 160,360 KB
実行使用メモリ 17,096 KB
最終ジャッジ日時 2024-11-24 06:19:45
合計ジャッジ時間 37,458 ms
ジャッジサーバーID
(参考情報)
judge1 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 31 TLE * 10
権限があれば一括ダウンロードができます

ソースコード

diff #

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef vector<int> vint;
typedef pair<int,int> pint;
typedef vector<pint> vpint;
#define rep(i,n) for(int i=0;i<(n);i++)
#define reps(i,f,n) for(int i=(f);i<(n);i++)
#define all(v) (v).begin(),(v).end()
#define pb push_back
#define mp make_pair
#define fi first
#define se second
#define chmax(a, b) a = (((a)<(b)) ? (b) : (a))
#define chmin(a, b) a = (((a)>(b)) ? (b) : (a))
const int MOD = 1e9 + 7;
const int INF = 1e9;

int main(void){
	string s; cin >> s;
	int k = s.size();
	int ret = 0;
	//5進数bit全探索
	for (int mask = 0; mask < pow(4, k); ++mask){
		int ans = 0;

		int tmask = mask;
		int bit[15];

		rep(pos, k){
			bit[pos] = tmask % 4;
			tmask /= 4;
		}
		int cnt0 = 0, cnt1 = 0, cnt2 = 0, cnt3 = 0;
		rep(i, k){
			if(bit[i] == 0) cnt0++;
			else if(bit[i] == 1) cnt1++;
			else if(bit[i] == 2) cnt2++;
			else if(bit[i] == 3) cnt3++;
		}
		if(cnt0 > 4 || cnt1 > 4 || cnt2 > 4 && cnt3 > 4) continue;

		rep(i, 4){
			string tm = "";
			rep(j, k){
				if(bit[j] == i) tm += s[j];
			}
			
			if(tm.size() == 3){
				if(tm[0] != '0' && tm[1] == tm[2] && tm[0] != tm[1]){
					ans += stoi(tm);
				}
			}
		}
		chmax(ret, ans);
	}
	printf("%d\n", ret);
	return 0;
}
0