Submission #770271

# Submission time Handle Problem Language Result Execution time Memory
770271 2023-07-01T04:16:38 Z gun_gan Dango Maker (JOI18_dango_maker) C++17
13 / 100
2000 ms 33264 KB
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;

const int MX = 10;
vector<vector<bool>> vis;
string s[MX];

int N, M;

map<vector<vector<bool>> , int > memo;

int f() {
      if(memo.count(vis)) return memo[vis];

      int res = 0;
      for(int i = 0; i < N; i++) {
            for(int j = 0; j + 2 < M; j++) {
                  if(!vis[i][j] && !vis[i][j + 1] && !vis[i][j + 2] 
                        && s[i][j] == 'R' && s[i][j + 1] == 'G' && s[i][j + 2] == 'W') {
                        vis[i][j] = vis[i][j + 1] = vis[i][j + 2] = 1;
                        res = max(res, f() + 1);
                        vis[i][j] = vis[i][j + 1] = vis[i][j + 2] = 0;
                  }
            }
      }
      for(int j = 0; j < M; j++) {
            for(int i = 0; i + 2 < N; i++) {
                  if(!vis[i][j] && !vis[i + 1][j] && !vis[i + 2][j]
                        && s[i][j] == 'R' && s[i + 1][j] == 'G' && s[i + 2][j] == 'W') {
                        vis[i][j] = vis[i + 1][j] = vis[i + 2][j] = 1;
                        res = max(res, f() + 1);
                        vis[i][j] = vis[i + 1][j] = vis[i + 2][j] = 0;
                  }
            }
      }

      return memo[vis] = res;
}

int main() {
      cin.tie(0); ios_base::sync_with_stdio(0);

      cin >> N >> M;

      vis = vector<vector<bool>> (N, vector<bool>(M));

      for(int i = 0; i < N; i++) cin >> s[i];

      cout << f() << '\n';
      
}
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 1 ms 212 KB Output is correct
3 Correct 1 ms 212 KB Output is correct
4 Correct 1 ms 320 KB Output is correct
5 Correct 1 ms 212 KB Output is correct
6 Correct 1 ms 212 KB Output is correct
7 Correct 0 ms 212 KB Output is correct
8 Correct 1 ms 212 KB Output is correct
9 Correct 0 ms 320 KB Output is correct
10 Correct 1 ms 212 KB Output is correct
11 Correct 1 ms 212 KB Output is correct
12 Correct 1 ms 316 KB Output is correct
13 Correct 1 ms 212 KB Output is correct
14 Correct 1 ms 256 KB Output is correct
15 Correct 1 ms 324 KB Output is correct
16 Correct 1 ms 212 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 1 ms 212 KB Output is correct
3 Correct 1 ms 212 KB Output is correct
4 Correct 1 ms 320 KB Output is correct
5 Correct 1 ms 212 KB Output is correct
6 Correct 1 ms 212 KB Output is correct
7 Correct 0 ms 212 KB Output is correct
8 Correct 1 ms 212 KB Output is correct
9 Correct 0 ms 320 KB Output is correct
10 Correct 1 ms 212 KB Output is correct
11 Correct 1 ms 212 KB Output is correct
12 Correct 1 ms 316 KB Output is correct
13 Correct 1 ms 212 KB Output is correct
14 Correct 1 ms 256 KB Output is correct
15 Correct 1 ms 324 KB Output is correct
16 Correct 1 ms 212 KB Output is correct
17 Correct 1 ms 212 KB Output is correct
18 Correct 1 ms 320 KB Output is correct
19 Correct 1145 ms 18028 KB Output is correct
20 Execution timed out 2067 ms 33264 KB Time limit exceeded
21 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 1 ms 212 KB Output is correct
3 Correct 1 ms 212 KB Output is correct
4 Correct 1 ms 320 KB Output is correct
5 Correct 1 ms 212 KB Output is correct
6 Correct 1 ms 212 KB Output is correct
7 Correct 0 ms 212 KB Output is correct
8 Correct 1 ms 212 KB Output is correct
9 Correct 0 ms 320 KB Output is correct
10 Correct 1 ms 212 KB Output is correct
11 Correct 1 ms 212 KB Output is correct
12 Correct 1 ms 316 KB Output is correct
13 Correct 1 ms 212 KB Output is correct
14 Correct 1 ms 256 KB Output is correct
15 Correct 1 ms 324 KB Output is correct
16 Correct 1 ms 212 KB Output is correct
17 Correct 1 ms 212 KB Output is correct
18 Correct 1 ms 320 KB Output is correct
19 Correct 1145 ms 18028 KB Output is correct
20 Execution timed out 2067 ms 33264 KB Time limit exceeded
21 Halted 0 ms 0 KB -