๋ชฉ๋ก์ ์ฒด ๊ธ (1099)
KoreanFoodie's Study
SW ์ญ๋ ํ ์คํธ ์ค๋น๋ฅผ ์ํ ํต์ฌ ๋ฌธ์ ๋ค์ ๋ค๋ฃน๋๋ค! ํด๋ต์ ๋ณด๊ธฐ ์ ์ ๋ฌธ์ ๋ฅผ ํ์ด๋ณด์๊ฑฐ๋, ์ค๊ณ๋ฅผ ํ๊ณ ์ค์๋ ๊ฒ์ ์ถ์ฒ๋๋ฆฝ๋๋ค. ์ฝ๋์ ๋ํ ์ค๋ช ์ ์ฃผ์์ ์ฐธ๊ณ ํด ์ฃผ์ธ์ :) 0. SW ์ญ๋ ํ ์คํธ๋ ๋ฌด์์ผ๊น? ... ๊ทธ๋ ๋ค๊ณ ํ๋ค. ์ถ์ ์ ํ์ ํฌ๊ฒ 4๊ฐ์ง๋ก ์ ๋ฆฌ๋๋๋ฐ, ๊ฐ ์ ํ๋ง๋ค ๊ผญ ํ์ด๋ณด๋ฉด ์ข์ ๋ฌธ์ ๋ค์ ๋งํฌ์ ํด๋ต์ ๊ฐ๊ฐ ์๋์ ์ ๋ฆฌํด ๋์๋ค. ๋ฐฑ์ค์ ์ฌ๋ผ์จ ๊ธฐ์ถ๋ฌธ์ ๋ฅผ ํฌํจํด, ํ์ด๋ณด๋ฉด ์ข์ ๋ฌธ์ ๋ค์ ๋ชจ์ ๋ดค์ผ๋, ์ฝ๋ฉํ ์คํธ๋ฅผ ์ค๋นํ๊ธฐ์ ์ข์ ๋ฌธ์ ์ ์ด๋ผ๊ณ ์๊ฐํ๋ค! 1. ์์ ํ์, ๋ฐฑํธ๋ํน (BFS, DFS) (ํ์) [๋ชจ์ SW ์ญ๋ํ ์คํธ] ์์์ฅ / ํด๋ต (ํ์) [๋ฐฑ์ค] ์ฌ๋ค๋ฆฌ ์กฐ์ / ํด๋ต (ํ์) [๋ฐฑ์ค] ํ ํธ๋ก๋ฏธ๋ ธ / ํด๋ต [๋ชจ์ SW ์ญ๋ํ ์คํธ] ๋์ ํธ ์นดํ / ํด๋ต [๋ชจ์..
SW ์ญ๋ ํ ์คํธ ์ค๋น๋ฅผ ์ํ ํต์ฌ ๋ฌธ์ ๋ค์ ๋ค๋ฃน๋๋ค! ํด๋ต์ ๋ณด๊ธฐ ์ ์ ๋ฌธ์ ๋ฅผ ํ์ด๋ณด์๊ฑฐ๋, ์ค๊ณ๋ฅผ ํ๊ณ ์ค์๋ ๊ฒ์ ์ถ์ฒ๋๋ฆฝ๋๋ค. ์ฝ๋์ ๋ํ ์ค๋ช ์ ์ฃผ์์ ์ฐธ๊ณ ํด ์ฃผ์ธ์ :) ๋ฌธ์ ๋งํฌ : www.acmicpc.net/problem/19238 ํด๋ต ์ฝ๋ : #include #include using namespace std; typedef struct pos { int row; int col; int num; } pos; typedef struct taxi { int row; int col; int fuel; } taxi; int map[20][20]; int visit[20][20]; // 1 ~ M * 10 pos guest[401]; pos target[401]; taxi myTaxi; int..
SW ์ญ๋ ํ ์คํธ ์ค๋น๋ฅผ ์ํ ํต์ฌ ๋ฌธ์ ๋ค์ ๋ค๋ฃน๋๋ค! ํด๋ต์ ๋ณด๊ธฐ ์ ์ ๋ฌธ์ ๋ฅผ ํ์ด๋ณด์๊ฑฐ๋, ์ค๊ณ๋ฅผ ํ๊ณ ์ค์๋ ๊ฒ์ ์ถ์ฒ๋๋ฆฝ๋๋ค. ์ฝ๋์ ๋ํ ์ค๋ช ์ ์ฃผ์์ ์ฐธ๊ณ ํด ์ฃผ์ธ์ :) ๋ฌธ์ ๋งํฌ : www.acmicpc.net/problem/19237 ํด๋ต ์ฝ๋ : #include #include using namespace std; typedef struct shark { int row; int col; int num; int dir; int prior[4][4]; int alive; } shark; typedef struct tile { int sh_num; int smell; int sm_num; }tile; int N, M, K; shark sharks[400]; tile map[20][20]; in..
SW ์ญ๋ ํ ์คํธ ์ค๋น๋ฅผ ์ํ ํต์ฌ ๋ฌธ์ ๋ค์ ๋ค๋ฃน๋๋ค! ํด๋ต์ ๋ณด๊ธฐ ์ ์ ๋ฌธ์ ๋ฅผ ํ์ด๋ณด์๊ฑฐ๋, ์ค๊ณ๋ฅผ ํ๊ณ ์ค์๋ ๊ฒ์ ์ถ์ฒ๋๋ฆฝ๋๋ค. ์ฝ๋์ ๋ํ ์ค๋ช ์ ์ฃผ์์ ์ฐธ๊ณ ํด ์ฃผ์ธ์ :) ๋ฌธ์ ๋งํฌ : www.acmicpc.net/problem/19236 ํด๋ต ์ฝ๋ : #include #include using namespace std; typedef struct fish { int num; int dir; }fish; typedef struct pos { int row; int col; int alive; // 0 = dead }pos; fish map[4][4]; fish shark; pos fish_pos[17]; // 0 is not used int dR[8] = {-1, -1, 0, 1, 1, 1, 0..
SW ์ญ๋ ํ ์คํธ ์ค๋น๋ฅผ ์ํ ํต์ฌ ๋ฌธ์ ๋ค์ ๋ค๋ฃน๋๋ค! ํด๋ต์ ๋ณด๊ธฐ ์ ์ ๋ฌธ์ ๋ฅผ ํ์ด๋ณด์๊ฑฐ๋, ์ค๊ณ๋ฅผ ํ๊ณ ์ค์๋ ๊ฒ์ ์ถ์ฒ๋๋ฆฝ๋๋ค. ์ฝ๋์ ๋ํ ์ค๋ช ์ ์ฃผ์์ ์ฐธ๊ณ ํด ์ฃผ์ธ์ :) ๋ฌธ์ ๋งํฌ : www.acmicpc.net/problem/19235 ํด๋ต ์ฝ๋ : #include using namespace std; typedef struct block { int filled; int right; int left; int up; int down; }block; //block green[6][4]; //block blue[6][4]; block map[2][10][4]; int inst[10000][3]; int ans; int sum_tiles() { int sum = 0; for (int i = 0; i..
SW ์ญ๋ ํ ์คํธ ์ค๋น๋ฅผ ์ํ ํต์ฌ ๋ฌธ์ ๋ค์ ๋ค๋ฃน๋๋ค! ํด๋ต์ ๋ณด๊ธฐ ์ ์ ๋ฌธ์ ๋ฅผ ํ์ด๋ณด์๊ฑฐ๋, ์ค๊ณ๋ฅผ ํ๊ณ ์ค์๋ ๊ฒ์ ์ถ์ฒ๋๋ฆฝ๋๋ค. ์ฝ๋์ ๋ํ ์ค๋ช ์ ์ฃผ์์ ์ฐธ๊ณ ํด ์ฃผ์ธ์ :) ๋ฌธ์ ๋งํฌ : www.acmicpc.net/problem/17825 ํด๋ต ์ฝ๋ : #include using namespace std; // ์ฃผ์ฌ์ int arr[10]; // ํ์ฌ ๋ง์ ์์น int mal[4]; // ์ท๋์ด ํ int map[35]; // - ํ์์ ๋ฐฉํฅ ์ ํ int turn[35]; // - ํ ์์น์ ๋ง์ด ์๋์ง ํ์ธ bool check[35]; // - ์ท๋์ด ํ์ ์ ์ int score[35]; // ์ต์ข ๊ฐ int ans = 0; void dfs(int cnt, int sum) { if (cnt =..
SW ์ญ๋ ํ ์คํธ ์ค๋น๋ฅผ ์ํ ํต์ฌ ๋ฌธ์ ๋ค์ ๋ค๋ฃน๋๋ค! ํด๋ต์ ๋ณด๊ธฐ ์ ์ ๋ฌธ์ ๋ฅผ ํ์ด๋ณด์๊ฑฐ๋, ์ค๊ณ๋ฅผ ํ๊ณ ์ค์๋ ๊ฒ์ ์ถ์ฒ๋๋ฆฝ๋๋ค. ์ฝ๋์ ๋ํ ์ค๋ช ์ ์ฃผ์์ ์ฐธ๊ณ ํด ์ฃผ์ธ์ :) ๋ฌธ์ ๋งํฌ : www.acmicpc.net/problem/17822 ํด๋ต ์ฝ๋ : #include #include using namespace std; typedef struct plate{ int num; bool mark; }plate; typedef struct inst { int pl; int dir; int tile; }inst; int N, M, T; deque plates[51]; inst insts[51]; int dR[4] = { -1, 1, 0, 0 }; int dC[4] = {0, 0, -1, 1}; // ..
SW ์ญ๋ ํ ์คํธ ์ค๋น๋ฅผ ์ํ ํต์ฌ ๋ฌธ์ ๋ค์ ๋ค๋ฃน๋๋ค! ํด๋ต์ ๋ณด๊ธฐ ์ ์ ๋ฌธ์ ๋ฅผ ํ์ด๋ณด์๊ฑฐ๋, ์ค๊ณ๋ฅผ ํ๊ณ ์ค์๋ ๊ฒ์ ์ถ์ฒ๋๋ฆฝ๋๋ค. ์ฝ๋์ ๋ํ ์ค๋ช ์ ์ฃผ์์ ์ฐธ๊ณ ํด ์ฃผ์ธ์ :) ๋ฌธ์ ๋งํฌ : www.acmicpc.net/problem/17837 ํด๋ต ์ฝ๋ : #include #include using namespace std; typedef struct chess{ int num; int row; int col; int dir; }chess; int N, K; int color[12][12]; deque map[12][12]; chess chess_pos[10]; int ans; bool flag; int dR[4] = {0, 0, -1, 1}; int dC[4] = {1, -1, 0, 0}; // ..
SW ์ญ๋ ํ ์คํธ ์ค๋น๋ฅผ ์ํ ํต์ฌ ๋ฌธ์ ๋ค์ ๋ค๋ฃน๋๋ค! ํด๋ต์ ๋ณด๊ธฐ ์ ์ ๋ฌธ์ ๋ฅผ ํ์ด๋ณด์๊ฑฐ๋, ์ค๊ณ๋ฅผ ํ๊ณ ์ค์๋ ๊ฒ์ ์ถ์ฒ๋๋ฆฝ๋๋ค. ์ฝ๋์ ๋ํ ์ค๋ช ์ ์ฃผ์์ ์ฐธ๊ณ ํด ์ฃผ์ธ์ :) ๋ฌธ์ ๋งํฌ : www.acmicpc.net/problem/17779 ํด๋ต ์ฝ๋ : #include #include using namespace std; typedef struct pos { int row; int col; }pos; int st_r, st_c, d1, d2; int N; int map[20][20]; // mark vote district int vote[20][20]; // number of people in the district int popul[6]; int ans; // 0 : Left, 1 : Up,..
SW ์ญ๋ ํ ์คํธ ์ค๋น๋ฅผ ์ํ ํต์ฌ ๋ฌธ์ ๋ค์ ๋ค๋ฃน๋๋ค! ํด๋ต์ ๋ณด๊ธฐ ์ ์ ๋ฌธ์ ๋ฅผ ํ์ด๋ณด์๊ฑฐ๋, ์ค๊ณ๋ฅผ ํ๊ณ ์ค์๋ ๊ฒ์ ์ถ์ฒ๋๋ฆฝ๋๋ค. ์ฝ๋์ ๋ํ ์ค๋ช ์ ์ฃผ์์ ์ฐธ๊ณ ํด ์ฃผ์ธ์ :) ๋ฌธ์ ๋งํฌ : www.acmicpc.net/problem/17142 ํด๋ต ์ฝ๋ : #include #include #include using namespace std; typedef struct pos { int row; int col; } pos; typedef struct vir { int row; int col; int time; } vir; int N, K; int map[50][50]; int backup[50][50]; // total viruses and number pos virus[10]; int num_v; ..