Submission #1206330

#TimeUsernameProblemLanguageResultExecution timeMemory
1206330viduxMosaic (IOI24_mosaic)C++17
7 / 100
78 ms12872 KiB
#include <bits/stdc++.h> using namespace std; //#define LOCAL #define FOR(i, n) for (int i = 0; i < n; ++i) #define REP(i, n, m) for (int i = n; i <= m; ++i) #define REPR(i, n, m) for (int i = n; i >= m; --i) #define FORR(x, a) for (auto& x : a) #define FORR2(x, y, a) for (auto& [x, y] : a) #define ALL(x) (x).begin(), (x).end() #define RALL(x) (x).rbegin(), (x).rend() #define SZ(a) ((int)a.size()) typedef long long ll; typedef pair<int, int> pii; typedef pair<ll, ll> pll; typedef vector<int> vi; typedef vector<ll> vl; typedef vector<vi> vvi; typedef vector<vl> vvl; const int INF = 1e9; const ll LLINF = 1e18; std::vector<long long> mosaic(std::vector<int> X, std::vector<int> Y, std::vector<int> T, std::vector<int> B, std::vector<int> L, std::vector<int> R) { int q = SZ(T); int n = SZ(X); vl ans(q); /* task 1,2,4 vvl a(n, vl(n)); FOR(i, n) a[i][0] = Y[i], a[0][i] = X[i]; FOR(i, n-1) FOR(j, n-1) { int k = a[i][j+1] + a[i+1][j]; a[i+1][j+1] = (k == 0); } //FORR(r, a) { FORR(x, r) cout << x << " "; cout << endl; } vvl pref(n+1, vl(n+1)); FOR(i, n) FOR(j, n) pref[i+1][j+1] = pref[i+1][j] + pref[i][j+1] - pref[i][j] + a[i][j]; //FORR(r, pref) { FORR(x, r) cout << x << " "; cout << endl; } FOR(t, q) { ll sum = pref[B[t]+1][R[t]+1] - pref[T[t]][R[t]+1] - pref[B[t]+1][L[t]] + pref[T[t]][L[t]]; //cout << sum << endl; ans[t] = sum; } */ vl pref(n+1); FOR(i, n) pref[i+1] = pref[i] + X[i]; FOR(t, q) ans[t] = pref[R[t]+1] - pref[L[t]]; return ans; } #ifdef LOCAL int main() { vl ans = mosaic({1, 0, 1, 0}, {1, 1, 0, 1}, {0, 2}, {3, 3}, {0, 0}, {3, 2}); FORR(x, ans) cout << x << endl; return 0; } #endif
#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...