/ SeriousOJ /

Record Detail

System Error


  
# Status Time Cost Memory Cost
#1 Accepted 2ms 568.0 KiB
#2 System Error 2ms 620.0 KiB
#3 System Error 25ms 14.098 MiB
#4 System Error 5ms 1.699 MiB
#5 System Error 4ms 1.219 MiB
#6 System Error 3ms 540.0 KiB
#7 System Error 26ms 14.102 MiB
#8 Accepted 2ms 332.0 KiB
#9 Accepted 2ms 560.0 KiB
#10 Accepted 2ms 540.0 KiB
#11 Accepted 2ms 328.0 KiB
#12 Accepted 2ms 544.0 KiB
#13 System Error 25ms 14.109 MiB
#14 System Error 8ms 3.227 MiB
#15 System Error 5ms 1.621 MiB
#16 System Error 26ms 14.094 MiB
#17 System Error 2ms 624.0 KiB
#18 System Error 3ms 796.0 KiB
#19 System Error 7ms 2.688 MiB
#20 System Error 9ms 3.18 MiB
#21 System Error 5ms 2.223 MiB
#22 System Error 6ms 1.809 MiB
#23 System Error 2ms 796.0 KiB
#24 Accepted 1ms 540.0 KiB
#25 System Error 2ms 1.027 MiB
#26 System Error 4ms 2.176 MiB
#27 System Error 9ms 5.527 MiB
#28 System Error 2ms 540.0 KiB
#29 System Error 2ms 1.027 MiB
#30 System Error 2ms 796.0 KiB
#31 System Error 2ms 492.0 KiB
#32 System Error 2ms 1.027 MiB
#33 System Error 3ms 1.305 MiB
#34 System Error 3ms 944.0 KiB
#35 System Error 2ms 796.0 KiB
#36 System Error 4ms 2.277 MiB
#37 System Error 2ms 540.0 KiB
#38 System Error 1ms 772.0 KiB
#39 System Error 3ms 1.277 MiB

Code

#include <bits/stdc++.h>
using namespace std;

void solve(int cs) {
  int a, b, c, d;
  cin >> a >> b >> c >> d;

  vector<vector<vector<vector<int>>>> dp(a + 1, vector<vector<vector<int>>>(b + 1, vector<vector<int>>(c + 1, vector<int>(d + 1, 0))));

  for (int i = 0; i <= a; ++i) {
    for (int j = 0; j <= b; ++j) {
      for (int k = 0; k <= c; ++k) {
        for (int l = 0; l <= d; ++l) {
          //i
          if (i >= 9) {
            dp[i][j][k][l] = max(dp[i][j][k][l], dp[i - 9][j][k][l] + 1);
          }
          if (i >= 7 && j >= 1) {
            dp[i][j][k][l] = max(dp[i][j][k][l], dp[i - 7][j - 1][k][l] + 1);
          }
          if (i >= 5 && j >= 2) {
            dp[i][j][k][l] = max(dp[i][j][k][l], dp[i - 5][j - 2][k][l] + 1);
          }
          if (i >= 3 && j >= 3) {
            dp[i][j][k][l] = max(dp[i][j][k][l], dp[i - 3][j - 3][k][l] + 1);
          }
          if (i >= 1 && j >= 4) {
            dp[i][j][k][l] = max(dp[i][j][k][l], dp[i - 1][j - 4][k][l] + 1);
          }
          if (i >= 6 && k >= 1) {
            dp[i][j][k][l] = max(dp[i][j][k][l], dp[i - 6][j][k - 1][l] + 1);
          }
          if (i >= 3 && k >= 2) {
            dp[i][j][k][l] = max(dp[i][j][k][l], dp[i - 3][j][k - 2][l] + 1);
          }
          if (i >= 6 && l >= 1) {
            dp[i][j][k][l] = max(dp[i][j][k][l], dp[i - 6][j][k][l - 1] + 1);
          }
          if (i >= 3 && l >= 2) {
            dp[i][j][k][l] = max(dp[i][j][k][l], dp[i - 3][j][k][l - 2] + 1);
          }
          //j
          if (j >= 3 && k >= 1) {
            dp[i][j][k][l] = max(dp[i][j][k][l], dp[i][j - 3][k - 1][l] + 1);
          }
          //k
          if (k >= 3) {
            dp[i][j][k][l] = max(dp[i][j][k][l], dp[i][j][k - 3][l] + 1);
          }
          if (k >= 1 && l >= 2) {
            dp[i][j][k][l] = max(dp[i][j][k][l], dp[i][j][k - 1][l - 2] + 1);
          }
          //i & j & k
          if (i >= 4 && j >= 1 && k >= 1) {
            dp[i][j][k][l] = max(dp[i][j][k][l], dp[i - 4][j - 1][k - 1][l] + 1);
          }
          if (i >= 2 && j >= 2 && k >= 1) {
            dp[i][j][k][l] = max(dp[i][j][k][l], dp[i - 2][j - 2][k - 1][l] + 1);
          }
          if (i >= 2 && j >= 2 && l >= 1) {
            dp[i][j][k][l] = max(dp[i][j][k][l], dp[i - 2][j - 2][k][l - 1] + 1);
          }
          if (i >= 1 && j >= 1 && l >= 2) {
            dp[i][j][k][l] = max(dp[i][j][k][l], dp[i - 1][j - 1][k][l - 2] + 1);
          }
          if (i >= 4 && j >= 1 && l >= 1) {
            dp[i][j][k][l] = max(dp[i][j][k][l], dp[i - 4][j - 1][k][l - 1] + 1);
          }
          if (i >= 3 && k >= 1 && l >= 1) {
            dp[i][j][k][l] = max(dp[i][j][k][l], dp[i - 3][j - 1][k][l - 1] + 1);
          }
          if (i >= 1 && j >= 1 && k >= 1 && l >= 1) {
            dp[i][j][k][l] = max(dp[i][j][k][l], dp[i - 1][j - 1][k - 1][l - 1] + 1);
          }
        }
      }
    }
  }

  cout << "Case " << cs << ": " << dp[a][b][c][d] << "\n";
}

int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  int tc;
  cin >> tc;
  for (int cs = 1; cs <= tc; cs++) {
    solve(cs);
  }
  return 0;
}

Information

Submit By
Type
Submission
Problem
P1014 FIFA World Cup 2022 Again!
Language
C++20 (G++ 13.2.0)
Submit At
2024-07-13 07:54:05
Judged At
2024-07-18 19:34:40
Judged By
Score
7
Total Time
26ms
Peak Memory
14.109 MiB