# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
1072302 | 2024-08-23T16:41:44 Z | Zicrus | 축구 경기장 (IOI23_soccer) | C++17 | 4500 ms | 596 KB |
#include <bits/stdc++.h> #include "soccer.h" using namespace std; typedef long long ll; int n; vector<vector<int>> f; vector<vector<int>> sum; int search(vector<pair<int, int>> prev, int res, int mn, int mx, bool dec) { if (sum[prev.size()][mx+1] - sum[prev.size()][mn] > 0) return res; for (auto &e : prev) { if (e.first == -1) continue; if (mn < e.first && mx < e.second) return res; if (mn > e.first && mx > e.second) return res; } prev.push_back({mn, mx}); res += mx - mn + 1; int best = res; if (prev.size() == n) return best; for (int i = 0; i < n; i++) { for (int j = i; j < n; j++) { if (dec && (i < mn || j > mx)) continue; bool d = dec || i > mn || j < mx; best = max(best, search(prev, res, i, j, d)); } } return best; } int biggest_stadium(int N, vector<vector<int>> F) { n = N; f = F; sum = vector<vector<int>>(n, vector<int>(n+1)); for (int i = 0; i < n; i++) { for (int j = 0; j < n; j++) { sum[i][j+1] = sum[i][j] + f[i][j]; } } vector<pair<int, int>> prev; int start = 0; while (sum[start].back() == n) { start++; prev.push_back({-1, -1}); } int best = 0; for (int i = 0; i < n; i++) { for (int j = i; j < n; j++) { best = max(best, search(prev, 0, i, j, false)); } } return best; }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 596 KB | ok |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 348 KB | ok |
2 | Correct | 1 ms | 348 KB | ok |
3 | Execution timed out | 4595 ms | 348 KB | Time limit exceeded |
4 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 348 KB | ok |
2 | Correct | 1 ms | 348 KB | ok |
3 | Correct | 0 ms | 344 KB | ok |
4 | Correct | 0 ms | 348 KB | ok |
5 | Correct | 0 ms | 348 KB | ok |
6 | Correct | 0 ms | 348 KB | ok |
7 | Correct | 1 ms | 348 KB | ok |
8 | Correct | 0 ms | 440 KB | ok |
9 | Correct | 0 ms | 348 KB | ok |
10 | Correct | 0 ms | 348 KB | ok |
11 | Correct | 0 ms | 348 KB | ok |
12 | Correct | 0 ms | 348 KB | ok |
13 | Correct | 0 ms | 348 KB | ok |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 596 KB | ok |
2 | Correct | 0 ms | 348 KB | ok |
3 | Correct | 1 ms | 348 KB | ok |
4 | Correct | 0 ms | 344 KB | ok |
5 | Correct | 0 ms | 348 KB | ok |
6 | Correct | 0 ms | 348 KB | ok |
7 | Correct | 0 ms | 348 KB | ok |
8 | Correct | 1 ms | 348 KB | ok |
9 | Correct | 0 ms | 440 KB | ok |
10 | Correct | 0 ms | 348 KB | ok |
11 | Correct | 0 ms | 348 KB | ok |
12 | Correct | 0 ms | 348 KB | ok |
13 | Correct | 0 ms | 348 KB | ok |
14 | Correct | 0 ms | 348 KB | ok |
15 | Correct | 44 ms | 348 KB | ok |
16 | Correct | 8 ms | 432 KB | ok |
17 | Correct | 1 ms | 348 KB | ok |
18 | Correct | 1 ms | 348 KB | ok |
19 | Partially correct | 0 ms | 344 KB | partial |
20 | Correct | 0 ms | 348 KB | ok |
21 | Correct | 0 ms | 344 KB | ok |
22 | Correct | 1 ms | 348 KB | ok |
23 | Correct | 1 ms | 348 KB | ok |
24 | Correct | 0 ms | 348 KB | ok |
25 | Correct | 1 ms | 348 KB | ok |
26 | Correct | 2 ms | 348 KB | ok |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 596 KB | ok |
2 | Correct | 0 ms | 348 KB | ok |
3 | Correct | 1 ms | 348 KB | ok |
4 | Execution timed out | 4595 ms | 348 KB | Time limit exceeded |
5 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 596 KB | ok |
2 | Correct | 0 ms | 348 KB | ok |
3 | Correct | 1 ms | 348 KB | ok |
4 | Execution timed out | 4595 ms | 348 KB | Time limit exceeded |
5 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 596 KB | ok |
2 | Correct | 0 ms | 348 KB | ok |
3 | Correct | 1 ms | 348 KB | ok |
4 | Execution timed out | 4595 ms | 348 KB | Time limit exceeded |
5 | Halted | 0 ms | 0 KB | - |