๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

Algorithm ๐Ÿง‘๐Ÿป‍๐Ÿ’ป457

[๋ฐฑ์ค€,c++] 16935๋ฒˆ - ๋ฐฐ์—ด ๋Œ๋ฆฌ๊ธฐ 3 ๋ฌธ์ œ 16935๋ฒˆ: ๋ฐฐ์—ด ๋Œ๋ฆฌ๊ธฐ 3 ํฌ๊ธฐ๊ฐ€ N×M์ธ ๋ฐฐ์—ด์ด ์žˆ์„ ๋•Œ, ๋ฐฐ์—ด์— ์—ฐ์‚ฐ์„ R๋ฒˆ ์ ์šฉํ•˜๋ ค๊ณ  ํ•œ๋‹ค. ์—ฐ์‚ฐ์€ ์ด 6๊ฐ€์ง€๊ฐ€ ์žˆ๋‹ค. 1๋ฒˆ ์—ฐ์‚ฐ์€ ๋ฐฐ์—ด์„ ์ƒํ•˜ ๋ฐ˜์ „์‹œํ‚ค๋Š” ์—ฐ์‚ฐ์ด๋‹ค. 1 6 2 9 8 4 → 4 2 9 3 1 8 7 2 6 9 8 2 → 9 2 3 6 1 5 1 8 3 4 2 9 → www.acmicpc.net ์ฝ”๋“œ #include #include using namespace std; int N, M, R; int map[101][101]; void print(){ for(int i=0; i 2022. 9. 22.
[๋ฐฑ์ค€,c++] 10703๋ฒˆ - ์œ ์„ฑ ๋ฌธ์ œ 10703๋ฒˆ: ์œ ์„ฑ ์ž‘๊ณ  ํŠน์ดํ•œ ๋ชจ์–‘์˜ ์œ ์„ฑ ์‚ฌ์ง„์ด ์ธํ„ฐ๋„ท์— ์˜ฌ๋ผ์™”๋‹ค. ์‚ฌ์ง„์—๋Š” ๋งค์šฐ ๋†’์€ ๊ณณ์—์„œ ๋–จ์–ด์ง€๊ณ  ์žˆ๋Š” ์œ ์„ฑ์ด ํ—ˆ๊ณต์— ์ฐํ˜€ ์žˆ์—ˆ๋‹ค. ์œ ์„ฑ์ด ๋–จ์–ด์ง€๊ณ  ๋‚œ ๋’ค์˜ ์‚ฌ์ง„๋„ ์žˆ์—ˆ์ง€๋งŒ ์•ˆํƒ€๊น๊ฒŒ๋„ ์†Œ์‹ค๋ผ๋ฒ„๋ ค www.acmicpc.net ์ฝ”๋“œ #include using namespace std; int N, M; char map[3001][3001]; int main(){ ios_base::sync_with_stdio(false); cin.tie(0); cin>>N>>M;; for(int i=0; i>inp; for(int k=0; k 2022. 9. 21.
[๋ฐฑ์ค€,c++] 22860๋ฒˆ - ํด๋” ์ •๋ฆฌ (small) ๋ฌธ์ œ 22860๋ฒˆ: ํด๋” ์ •๋ฆฌ (small) main ํด๋” ํ•˜์œ„์—๋Š” FolderA ํด๋” ํ•˜์œ„์— ์žˆ๋Š” File1, File2, FolderB ํด๋” ํ•˜์œ„์— ์žˆ๋Š” File1, File3์ด ์žˆ๋‹ค. ํŒŒ์ผ์˜ ์ข…๋ฅ˜๋Š” File1, File2, File3 ์ด 3๊ฐ€์ง€์ด๊ณ , ํŒŒ์ผ์˜ ์ด ๊ฐœ์ˆ˜๋Š” File1, File2, File1, File3 ์ด 4๊ฐœ์ด๋‹ค. mai www.acmicpc.net ์ฝ”๋“œ #include #include #include #include using namespace std; int N, M; unordered_map graph; unordered_map visited; int file_cnt, file_type_cnt; void dfs(string node){ for(auto it: graph[node].. 2022. 9. 21.
[๋ฐฑ์ค€,c++] 14500๋ฒˆ - ํ…ŒํŠธ๋กœ๋ฏธ๋…ธ ๋ฌธ์ œ 14500๋ฒˆ: ํ…ŒํŠธ๋กœ๋ฏธ๋…ธ ํด๋ฆฌ์˜ค๋ฏธ๋…ธ๋ž€ ํฌ๊ธฐ๊ฐ€ 1×1์ธ ์ •์‚ฌ๊ฐํ˜•์„ ์—ฌ๋Ÿฌ ๊ฐœ ์ด์–ด์„œ ๋ถ™์ธ ๋„ํ˜•์ด๋ฉฐ, ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์กฐ๊ฑด์„ ๋งŒ์กฑํ•ด์•ผ ํ•œ๋‹ค. ์ •์‚ฌ๊ฐํ˜•์€ ์„œ๋กœ ๊ฒน์น˜๋ฉด ์•ˆ ๋œ๋‹ค. ๋„ํ˜•์€ ๋ชจ๋‘ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ์–ด์•ผ ํ•œ๋‹ค. ์ •์‚ฌ๊ฐํ˜•์˜ ๋ณ€ www.acmicpc.net ์ฝ”๋“œ #include using namespace std; int map[501][501]; int N, M; /* ์ด 19๊ฐœ์˜ ๋ชจ์–‘ ๊ฐ€๋Šฅ */ int dr1[2][3] = {{1, 2, 3}, {0, 0, 0}}; int dc1[2][3] = {{0, 0 ,0}, {1, 2, 3}}; int dr2[3] = {0, 1, 1}; int dc2[3] = {1, 0, 1}; int dr3[8][3] = {{1, 2, 2}, {0, 0, 1}, {0, 1, 2},.. 2022. 9. 18.
[๋ฐฑ์ค€,c++] 21278๋ฒˆ - ํ˜ธ์„์ด ๋‘ ๋งˆ๋ฆฌ ์น˜ํ‚จ ๋ฌธ์ œ 21278๋ฒˆ: ํ˜ธ์„์ด ๋‘ ๋งˆ๋ฆฌ ์น˜ํ‚จ ์œ„์˜ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์ด 1๋ฒˆ๊ณผ 2๋ฒˆ ๊ฑด๋ฌผ์— ์น˜ํ‚จ์ง‘์„ ์ง“๊ฒŒ ๋˜๋ฉด 1๋ฒˆ๋ถ€ํ„ฐ 5๋ฒˆ ๊ฑด๋ฌผ์— ๋Œ€ํ•ด ์น˜ํ‚จ์ง‘๊นŒ์ง€์˜ ์™•๋ณต ์‹œ๊ฐ„์ด 0, 0, 2, 2, 2 ๋กœ ์ตœ์†Œ๊ฐ€ ๋œ๋‹ค. 2๋ฒˆ๊ณผ 3๋ฒˆ ๊ฑด๋ฌผ์— ์ง€์–ด๋„ ๋™์ผํ•œ ์™•๋ณต ์‹œ๊ฐ„์ด ๋‚˜์˜ค์ง€๋งŒ ๋” www.acmicpc.net ์ฝ”๋“œ #include #define INF 1e9 using namespace std; int N, M; int d[101][101]; int main(){ ios_base::sync_with_stdio(false); cin.tie(0); for(int i=0; iN>>M; for(int i=0; i>a>>b; d[a][b] = 1; d[b][a] = 1; } for(int k=1; k 2022. 9. 18.
[๋ฐฑ์ค€,c++] 15661๋ฒˆ - ๋งํฌ์™€ ์Šคํƒ€ํŠธ ๋ฌธ์ œ 15661๋ฒˆ: ๋งํฌ์™€ ์Šคํƒ€ํŠธ ์ฒซ์งธ ์ค„์— N(4 ≤ N ≤ 20)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ N๊ฐœ์˜ ์ค„์— S๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ๊ฐ ์ค„์€ N๊ฐœ์˜ ์ˆ˜๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๊ณ , i๋ฒˆ ์ค„์˜ j๋ฒˆ์งธ ์ˆ˜๋Š” Sij ์ด๋‹ค. Sii๋Š” ํ•ญ์ƒ 0์ด๊ณ , ๋‚˜๋จธ์ง€ Sij๋Š” 1๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™๊ณ , 100 www.acmicpc.net ์ฝ”๋“œ #include using namespace std; int map[21][21]; int N; int min_ability = 1e9; bool flag[21]; int score(){ int start_score = 0; int link_score = 0; for(int i=1; i 2022. 9. 18.
[๋ฐฑ์ค€,c++] 6987๋ฒˆ - ์›”๋“œ์ปต ๋ฌธ์ œ 6987๋ฒˆ: ์›”๋“œ์ปต ์›”๋“œ์ปต ์กฐ๋ณ„ ์ตœ์ข… ์˜ˆ์„ ์—์„œ๋Š” 6๊ฐœ๊ตญ์œผ๋กœ ๊ตฌ์„ฑ๋œ ๊ฐ ์กฐ๋ณ„๋กœ ๋™์ผํ•œ ์กฐ์— ์†Œ์†๋œ ๊ตญ๊ฐ€๋“ค๊ณผ ํ•œ ๋ฒˆ์”ฉ, ๊ฐ ๊ตญ๊ฐ€๋ณ„๋กœ ์ด 5๋ฒˆ์˜ ๊ฒฝ๊ธฐ๋ฅผ ์น˜๋ฅธ๋‹ค. ์กฐ๋ณ„๋ฆฌ๊ทธ๊ฐ€ ๋๋‚œ ํ›„, ๊ธฐ์ž๊ฐ€ ๋ณด๋‚ด์˜จ ๊ฐ ๋‚˜๋ผ์˜ ์Šน, ๋ฌด์Šน๋ถ€ www.acmicpc.net ์ฝ”๋“œ #include #include using namespace std; int arr[6][3]; bool flag_check(){ for(int i=0; i 0){ arr[idx][0]--; arr[next][2]--; backtracking(idx, next + 1, depth + 1); arr[idx][0]++; arr[next][2]++; } if(arr[idx][1] > 0 && arr[next][1] > 0){ arr[idx][1]--; arr[.. 2022. 9. 18.
[๋ฐฑ์ค€,c++] 21608๋ฒˆ - ์ƒ์–ด ์ดˆ๋“ฑํ•™๊ต ๋ฌธ์ œ 21608๋ฒˆ: ์ƒ์–ด ์ดˆ๋“ฑํ•™๊ต ์ƒ์–ด ์ดˆ๋“ฑํ•™๊ต์—๋Š” ๊ต์‹ค์ด ํ•˜๋‚˜ ์žˆ๊ณ , ๊ต์‹ค์€ N×N ํฌ๊ธฐ์˜ ๊ฒฉ์ž๋กœ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ๋‹ค. ํ•™๊ต์— ๋‹ค๋‹ˆ๋Š” ํ•™์ƒ์˜ ์ˆ˜๋Š” N2๋ช…์ด๋‹ค. ์˜ค๋Š˜์€ ๋ชจ๋“  ํ•™์ƒ์˜ ์ž๋ฆฌ๋ฅผ ์ •ํ•˜๋Š” ๋‚ ์ด๋‹ค. ํ•™์ƒ์€ 1๋ฒˆ๋ถ€ํ„ฐ N2๋ฒˆ๊นŒ์ง€ ๋ฒˆํ˜ธ www.acmicpc.net ์ฝ”๋“œ #include #include using namespace std; int N, ans; int map[21][21]; int favorite[442][5]; int dr[4] = {0,0,-1,1}; int dc[4] = {-1,1,0,0}; int peo[442][4]; vector find_blank(){ // ํ˜„์žฌ ๋น„์–ด์žˆ๋Š” ์ขŒํ‘œ์ฐพ๊ธฐ vector v; // ๋น„์–ด์žˆ๋Š” ์นธ์˜ ์ขŒํ‘œ๋ฅผ ๋‹ด์„ ๋ฒกํ„ฐ for(int i=0; i= max_black_.. 2022. 9. 18.
[๋ฐฑ์ค€,c++] 22856๋ฒˆ - ํŠธ๋ฆฌ ์ˆœํšŒ ๋ฌธ์ œ 22856๋ฒˆ: ํŠธ๋ฆฌ ์ˆœํšŒ ๋…ธ๋“œ๊ฐ€ $N$๊ฐœ์ธ ์ด์ง„ ํŠธ๋ฆฌ๊ฐ€ ์žˆ๋‹ค. ํŠธ๋ฆฌ๋ฅผ ์ค‘์œ„ ์ˆœํšŒ์™€ ์œ ์‚ฌํ•˜๊ฒŒ ์ˆœํšŒํ•˜๋ ค๊ณ  ํ•œ๋‹ค. ์ด๋ฅผ ์œ ์‚ฌ ์ค‘์œ„ ์ˆœํšŒ๋ผ๊ณ  ํ•˜์ž. ์ˆœํšŒ์˜ ์‹œ์ž‘์€ ํŠธ๋ฆฌ์˜ ๋ฃจํŠธ์ด๊ณ  ์ˆœํšŒ์˜ ๋์€ ์ค‘์œ„ ์ˆœํšŒํ•  ๋•Œ ๋งˆ์ง€๋ง‰ ๋…ธ๋“œ์ด๋‹ค. www.acmicpc.net ์ฝ”๋“œ #include #include using namespace std; vector graph[100001]; bool visited[1000001]; int end_node; int ans = 0; bool flag = true; void go(int node){ int left_node = graph[node][0]; // ๋…ธ๋“œ์™ธ ์ขŒ์ธก ์ž์‹ int right_node = graph[node][1]; // ๋…ธ๋“œ์˜ ์šฐ์ธก ์ž์‹ if(left_node !=.. 2022. 9. 18.