제출 #1225370

#제출 시각아이디문제언어결과실행 시간메모리
1225370VMaksimoski008모자이크 (IOI24_mosaic)C++20
0 / 100
82 ms15944 KiB
#include "mosaic.h" #include <bits/stdc++.h> using namespace std; using ll = long long; using pii = pair<int, int>; const int N = 2e5 + 5; int H[3][N], V[N][3]; int get(int r, int c) { if(r < 3) return H[r][c]; if(c < 3) return V[r][c]; if(r <= c) return H[2][c-r+2]; return V[r-c+2][2]; } vector<ll> mosaic(vector<int> x, vector<int> y, vector<int> t, vector<int> b, vector<int> l, vector<int> r) { int n = x.size(), q = t.size(); vector<ll> ans(q); for(int i=0; i<n; i++) { H[0][i] = x[i]; V[i][0] = y[i]; } for(int i=1; i<3; i++) for(int j=1; j<n; j++) H[i][j] = (H[i-1][j] + H[i][j-1] == 0); for(int j=1; j<3; j++) for(int i=1; i<n; i++) V[i][j] = (V[i-1][j] + V[i][j-1] == 0); for(int i=0; i<q; i++) ans[i] = get(t[i], l[i]); return ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...