Algorithm
-
UCPC 2020 C / 함수 복원 - 19544Algorithm/BOJ 2020. 8. 5. 23:02
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 #include #include using namespace std; const int MOD = 1000000007; int N; int arr[500][500]; vector cyidx; vector cycleMem; vector aroundMem; v..
-
UCPC 2020 B / 던전 지도 - 19543Algorithm/BOJ 2020. 8. 5. 22:54
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 #include #include using namespace std; int N, M, K; string arr[26]; int findU(int i, int u, int v) { for(int idx = v; idx >= u; --idx) if(arr[i][idx] == 'U') return idx; return -1; } int main() { ios_base::sync_with_stdio(0), cin.tie(0); cin >> N >> M >>K; stack S; for(int i..
-
UCPC 2020 A / 전단지 돌리기 - 19542Algorithm/BOJ 2020. 8. 5. 22:42
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 #include #include using namespace std; int N, S, D; int ans = 0; vector adj; vector dept; vector Mdept; int dfs(int here) { int ret = dept[here]; for(int i = 0; i= D) ans += 2; return ret; } int main() { ios_base::sync_with_stdio(0), cin.tie(0); cin >> N >> S >> D; adj = vector(N+1); Md..
-
UCPC 2020 예선 G / 루머 - 19538Algorithm/BOJ 2020. 8. 5. 21:38
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 #include #include #include using namespace std; int N, M; queue black[2]; vector adj, blackAdj; vector isWhite; vector ans; void linkBk(int here) { for(int i = 0; i> N; b..
-
UCPC 2020 예선 D / ㄷㄷㄷㅈ - 19535Algorithm/BOJ 2020. 8. 5. 21:30
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 #include #include using namespace std; int main() { ios_base::sync_with_stdio(0), cin.tie(0); int N; cin >> N; vector adj(N+1); int u, v; for(int i =0; i> u >> v; adj[u].push_back(v); adj[v].push_back(u); } long long D= 0, G = 0; for(int i = 1; i 3*G) cout