제출 #396521

#제출 시각아이디문제언어결과실행 시간메모리
396521blueRectangles (IOI19_rect)C++17
컴파일 에러
0 ms0 KiB
#include "rectangle.h" using namespace std; /* For each (i, j) T[i][j] = furthest row I such that T[I][j], T[I+1][j], ... T[i-1][j] all have height less than (i, j) Similarly, D[i][j], R[i][j], L[i][j] A rectangle (r1, r2, c1, c2) is good if(minD[r1-1][c1..c2] > r2) and so on */ vector< vector<int> > A; int cc = 0; vector<int> t, l, d, r; vector<int> s; int n, m; void dfs(int i, int j) { if(A[i][j]) continue; A[i][j] = 1; t[cc-1] = min(t[cc-1], i); d[cc-1] = max(d[cc-1], i); l[cc-1] = min(l[cc-1], j); r[cc-1] = max(r[cc-1], j); s[cc-1]++; if(i > 0) dfs(i-1, j); if(i < n-1) dfs(i+1, j); if(j > 0) dfs(i, j-1); if(j < m-1) dfs(i, j+1); } long long count_rectangles(vector< vector<int> > a) { A = a; n = A.size(); m = A[0].size(); for(int i = 0; i < n; i++) for(int j = 0; j < m; j++) { if(A[i][j]) continue; cc++; s.push_back(0); t.push_back(1e9); l.push_back(1e9); d.push_back(-1); r.push_back(-1); dfs(i, j); } long long res = 0; for(int i = 0; i < cc; i++) { if(t[i] == 0 || l[i] == 0 || d[i] == n-1 || r[i] == m-1) continue; if(s[i] == (d[i]-t[i]+1) * (r[i]-l[i]+1)) res++; } return res; }

컴파일 시 표준 에러 (stderr) 메시지

rect.cpp:1:10: fatal error: rectangle.h: No such file or directory
    1 | #include "rectangle.h"
      |          ^~~~~~~~~~~~~
compilation terminated.