全部試す。
- class SRMCodingPhase {
- public:
- int countScore(vector <int> P, vector <int> S, int L)
- {
- int mx = 0;
- for (int a = 0; a < S[0]; ++a) {
- for (int b = 0; b < S[1]; ++b) {
- for (int c = 0; c < S[2]; ++c) {
- if (a + b + c <= L) ; else break;
- vector<int> s;
- s.push_back(S[0] - a);
- s.push_back(S[1] - b);
- s.push_back(S[2] - c);
- int ord[] = {0, 1, 2};
- do {
- int p = 0, t = 0;
- for (int i = 0; i < 3; ++i) {
- t += s[ord[i]];
- if (t <= 75) ; else break;
- int lost = (1 << (ord[i] + 1)) * s[ord[i]];
- p += max(0, P[ord[i]] - lost);
- }
- mx = max(mx, p);
- } while (next_permutation(ord, ord + 3));
- }
- }
- }
- return mx;
- }
- };
0 件のコメント :
コメントを投稿