제출 #1210740

#제출 시각아이디문제언어결과실행 시간메모리
1210740siewjhNavigation 2 (JOI21_navigation2)C++20
50 / 100
292 ms876 KiB
#include "Anna.h" #include <bits/stdc++.h> using namespace std; namespace { } // namespace void Anna(int N, int K, vector<int> R, vector<int> C) { for (int i = 0; i < N; i++) for (int j = 0; j < N; j++){ int id = (i % 3) * 3 + (j % 3); if (id >= K){ SetFlag(i, j, 26); continue; } int r = R[id], c = C[id]; int rv, cv; if (r <= i - 2) rv = 0; else if (r == i - 1) rv = 1; else if (r == i) rv = 2; else if (r == i + 1) rv = 3; else rv = 4; if (c <= j - 2) cv = 0; else if (c == j - 1) cv = 1; else if (c == j) cv = 2; else if (c == j + 1) cv = 3; else cv = 4; SetFlag(i, j, rv * 5 + cv + 1); } }
#include "Bruno.h" #include <bits/stdc++.h> using namespace std; namespace { int variable_example = 1; } // namespace vector<int> Bruno(int K, vector<int> value){ vector<int> ans(K); int id; for (int i = 0; i < 9; i += 3) if (value[i] == 26 || value[i + 1] == 26 || value[i + 2] == 26){ if (value[i] != 26) id = (i + 3) % 9; else if (value[i + 1] != 26) id = (i + 4) % 9; else id = (i + 5) % 9; } int rid = id / 3, cid = id % 3; for (int i = 0; i < K; i++){ int ridh = (rid + i / 3) % 3, cidh = (cid + i % 3) % 3, idh = ridh * 3 + cidh; int rv = (value[idh] - 1) / 5, cv = (value[idh] - 1) % 5; int dr = ridh, dc = cidh; if (rv == 0) dr -= 2; else if (rv == 1) dr--; else if (rv == 3) dr++; else if (rv == 4) dr += 2; if (cv == 0) dc -= 2; else if (cv == 1) dc--; else if (cv == 3) dc++; else if (cv == 4) dc += 2; if (dr < 1) ans[i] = 3; else if (dr > 1) ans[i] = 2; else if (dc < 1) ans[i] = 1; else if (dc > 1) ans[i] = 0; else ans[i] = 4; } return ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...