Algorithm/BOJ
-
거의 최단 경로 - 5719Algorithm/BOJ 2020. 2. 18. 16:19
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 89 90 //5719 - 거의 최단 경로 #include #include #include using namespace std; #define INF 200000000 int N, M, S, D; vector adj; void init() { cin >> ..
-
특정한 최단 경로 - 1504Algorithm/BOJ 2020. 2. 18. 01:43
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 //1504 - 특정한 최단 경로 #include #include #include using namespace std; #define INF 200000000 int N, M, U, V; vector adj; void init() { cin >> N >> M; adj = vector(N+1); int x, y, r; for(int i = 0; i> x >> y >> r; adj[x].push_..
-
집합 - 11723Algorithm/BOJ 2020. 2. 17. 03:41
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 //11723 - 집합 #include #include using namespace std; int N; void add(int u) { N |= (1
-
제국 - 16402Algorithm/BOJ 2020. 2. 14. 16:48
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 89 90 91 92 93 94 95 96 97 //16402 - 제국 #include #include #include #include using namespace std; int N, M; vector name; map m; struct DisjointS..
-
1602 - 도망자 원숭이Algorithm/BOJ 2020. 2. 14. 14:21
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 //1602 - 도망자 원숭이 #include #include #include using namespace std; #define INF 200000000 int N, M, C; vector adj; vector ptime; vector W; void init() { cin >> N >> M >> C; W = adj = vector(N + 1, vector(N + 1, INF)); ..
-
파티 - 1238Algorithm/BOJ 2020. 2. 13. 23:29
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 //1238 - 파티 #include #include using namespace std; #define INF 100001 int N, M, P; vector adj; void init() { cin >> N >> M >> P; adj = vector(N+1, vector(N+1, INF)); int x, y, r; for(int i = 0; i> x >> y >> r; adj[x][y] = r; } for(int i = 1; i
-
비용 - 2463Algorithm/BOJ 2020. 2. 13. 23:12
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 //2463 - 비용 #include #include #include using namespace std; #define MOD 1000000000 int N, M; vector edge; vector msize; struct DisjointSet { vector parent, rank; DisjointSet(int n) : paren..