728x90

๐Ÿ“ Coding Test Study/Algorithm Problem 69

[C++][BAEKJOON][์‹œ๋ฎฌ๋ ˆ์ด์…˜] 17144๋ฒˆ ๋ฏธ์„ธ๋จผ์ง€ ์•ˆ๋…•!

๋ฌธ์ œ 17144๋ฒˆ: ๋ฏธ์„ธ๋จผ์ง€ ์•ˆ๋…•! ๋ฏธ์„ธ๋จผ์ง€๋ฅผ ์ œ๊ฑฐํ•˜๊ธฐ ์œ„ํ•ด ๊ตฌ์‚ฌ๊ณผ๋Š” ๊ณต๊ธฐ์ฒญ์ •๊ธฐ๋ฅผ ์„ค์น˜ํ•˜๋ ค๊ณ  ํ•œ๋‹ค. ๊ณต๊ธฐ์ฒญ์ •๊ธฐ์˜ ์„ฑ๋Šฅ์„ ํ…Œ์ŠคํŠธํ•˜๊ธฐ ์œ„ํ•ด ๊ตฌ์‚ฌ๊ณผ๋Š” ์ง‘์„ ํฌ๊ธฐ๊ฐ€ R×C์ธ ๊ฒฉ์žํŒ์œผ๋กœ ๋‚˜ํƒ€๋ƒˆ๊ณ , 1×1 ํฌ๊ธฐ์˜ ์นธ์œผ๋กœ ๋‚˜๋ˆด๋‹ค. ๊ตฌ์‚ฌ www.acmicpc.net ํ’€์ด ๋ฏธ์„ธ๋จผ์ง€๊ฐ€ ํผ์ง€๊ณ  ๋‚˜์„œ ๊ธฐ์กด ๋งต์˜ ๊ฐ’์„ ๊ฐฑ์‹ ํ•ด๋‘๋ฉด ๋‹ค์Œ ๋ฏธ์„ธ๋จผ์ง€์˜ ํ™•์‚ฐ์— ์˜ํ–ฅ์„ ๋ฏธ์น˜๋ฏ€๋กœ int cal_map[1001][1001] = { {0,0}, }; ์ด๋ผ๋Š” ์ƒˆ ๋ณ€์ˆ˜๋ฅผ ๋งŒ๋“ค์–ด์„œ ๊ทธ ๋ณ€์ˆ˜์— ๊ฐ’์„ ๊ณ„์† ๋”ํ•œ ํ›„, ๋งˆ์ง€๋ง‰์— ๋”ํ•˜๋Š” ์‹์œผ๋กœ ๊ตฌํ˜„ํ–ˆ๋‹ค. ๊ณต๊ธฐ์ฒญ์ •๊ธฐ์˜ ์ˆœํ™˜๋ถ€๋ถ„์€ ๊ณต๊ธฐ์ฒญ์ •๊ธฐ ์œ„์•„๋ž˜๋ฅผ 0์œผ๋กœ ํ‘œ์‹œํ•ด๋‘๊ณ  ์œ„์ชฝ์€ ๋ฐ˜์‹œ๊ณ„๋ฐฉํ–ฅ, ์•„๋ž˜์ชฝ์€ ์‹œ๊ณ„๋ฐฉํ–ฅ์œผ๋กœ ํ•œ ์นธ์”ฉ ๋Œ๋ ธ๋‹ค. for ๋ฌธ 8๊ฐœ๋กœ ;;;;; ๋งˆ์ง€๋ง‰์— ๋ฏธ์„ธ๋จผ์ง€์˜ ์–‘์„ ๊ณ„์‚ฐํ•˜๋Š” ๊ฒƒ์ด๋ฏ€๋กœ map์—์„œ -..

[C++][BAEKJOON][DP] 9456๋ฒˆ ์Šคํ‹ฐ์ปค

๋ฌธ์ œ https://www.acmicpc.net/problem/9465 9465๋ฒˆ: ์Šคํ‹ฐ์ปค ์ฒซ์งธ ์ค„์— ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค์˜ ๊ฐœ์ˆ˜ T๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ๊ฐ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค์˜ ์ฒซ์งธ ์ค„์—๋Š” n (1 ≤ n ≤ 100,000)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‹ค์Œ ๋‘ ์ค„์—๋Š” n๊ฐœ์˜ ์ •์ˆ˜๊ฐ€ ์ฃผ์–ด์ง€๋ฉฐ, ๊ฐ ์ •์ˆ˜๋Š” ๊ทธ ์œ„์น˜์— ํ•ด๋‹นํ•˜๋Š” ์Šคํ‹ฐ์ปค์˜ www.acmicpc.net ๋ฌธ์ œ์„ค๋ช… ์ฝ”๋“œ #include #include using namespace std; int sticker[2][100001]; int searchMaxScore(int); int main() { int testcase = 0; cin >> testcase; for (int t = 0; t > column; fo..

[C++][ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ๊ด„ํ˜ธ ๋ณ€ํ™˜

๋ฌธ์ œ https://programmers.co.kr/learn/courses/30/lessons/60058 ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ๊ด„ํ˜ธ ๋ณ€ํ™˜ ์นด์นด์˜ค์— ์‹ ์ž… ๊ฐœ๋ฐœ์ž๋กœ ์ž…์‚ฌํ•œ "์ฝ˜"์€ ์„ ๋ฐฐ ๊ฐœ๋ฐœ์ž๋กœ๋ถ€ํ„ฐ ๊ฐœ๋ฐœ์—ญ๋Ÿ‰ ๊ฐ•ํ™”๋ฅผ ์œ„ํ•ด ๋‹ค๋ฅธ ๊ฐœ๋ฐœ์ž๊ฐ€ ์ž‘์„ฑํ•œ ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ๋ถ„์„ํ•˜์—ฌ ๋ฌธ์ œ์ ์„ ๋ฐœ๊ฒฌํ•˜๊ณ  ์ˆ˜์ •ํ•˜๋ผ๋Š” ์—…๋ฌด ๊ณผ์ œ๋ฅผ ๋ฐ›์•˜์Šต๋‹ˆ๋‹ค. ์†Œ์Šค๋ฅผ programmers.co.kr ๋ฌธ์ œํ’€์ด ์‹œ๋ฎฌ๋ ˆ์ด์…˜ ๊ฐ™์ด ๋ฌธ์ œ์—์„œ ์•Œ๋ ค์ค€ ๊ด„ํ˜ธ๋ณ€ํ™˜ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ํ•˜๋‚˜ํ•˜๋‚˜ ์ฐจ๋ก€๋กœ ๊ตฌํ˜„ํ•˜๋ฉด ๋œ๋‹ค. 1. ์ž…๋ ฅ์ด ๋นˆ ๋ฌธ์ž์—ด์ธ ๊ฒฝ์šฐ, ๋นˆ ๋ฌธ์ž์—ด์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. 2. ๋ฌธ์ž์—ด w๋ฅผ ๋‘ "๊ท ํ˜•์žกํžŒ ๊ด„ํ˜ธ ๋ฌธ์ž์—ด" u, v๋กœ ๋ถ„๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ๋‹จ, u๋Š” "๊ท ํ˜•์žกํžŒ ๊ด„ํ˜ธ ๋ฌธ์ž์—ด"๋กœ ๋” ์ด์ƒ ๋ถ„๋ฆฌํ•  ์ˆ˜ ์—†์–ด์•ผ ํ•˜๋ฉฐ, v๋Š” ๋นˆ ๋ฌธ์ž์—ด์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 3. ๋ฌธ์ž์—ด u๊ฐ€ "์˜ฌ๋ฐ”๋ฅธ ๊ด„ํ˜ธ ..

[C++][Baekjoon] 14503๋ฒˆ ๋กœ๋ด‡ ์ฒญ์†Œ๊ธฐ

๋ฌธ์ œ https://www.acmicpc.net/problem/14503 14503๋ฒˆ: ๋กœ๋ด‡ ์ฒญ์†Œ๊ธฐ ๋กœ๋ด‡ ์ฒญ์†Œ๊ธฐ๊ฐ€ ์ฃผ์–ด์กŒ์„ ๋•Œ, ์ฒญ์†Œํ•˜๋Š” ์˜์—ญ์˜ ๊ฐœ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ๋กœ๋ด‡ ์ฒญ์†Œ๊ธฐ๊ฐ€ ์žˆ๋Š” ์žฅ์†Œ๋Š” N×M ํฌ๊ธฐ์˜ ์ง์‚ฌ๊ฐํ˜•์œผ๋กœ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ์œผ๋ฉฐ, 1×1ํฌ๊ธฐ์˜ ์ •์‚ฌ๊ฐํ˜• ์นธ์œผ๋กœ ๋‚˜๋ˆ„์–ด www.acmicpc.net ์ฝ”๋“œ #include using namespace std; void CleanArea(int, int, int); const int direction[4][2] = { {-1,0},{0,1},{1,0},{0,-1} }; //๋ถ, ๋™, ๋‚จ, ์„œ int map[51][51]; int height, width; int clean_count; int main() { cin >> height >> ..

[C++][Baekjoon][DP] 1309๋ฒˆ ๋™๋ฌผ์›

๋ฌธ์ œ https://www.acmicpc.net/problem/1309 1309๋ฒˆ: ๋™๋ฌผ์› ์ฒซ์งธ ์ค„์— ์šฐ๋ฆฌ์˜ ํฌ๊ธฐ N(1≤N≤100,000)์ด ์ฃผ์–ด์ง„๋‹ค. www.acmicpc.net ๋ฐฑ์ค€์— ์Šคํ‹ฐ์ปค๋ž‘ 2*n ํƒ€์ผ๋ง ๋ฌธ์ œ์™€ ๋งค์šฐ ๋น„์Šท... ์ฐธ๊ณ ์‚ฌ์ง„ ์ฝ”๋“œ #include using namespace std; void DP_function(int); const int MAX_SIZE = 100000; const int MOD = 9901; int dp[MAX_SIZE][3]; int main() { int column = 0; cin >> column; DP_function(column); } void DP_function(int column) { dp[1][0] = 1; dp[1][1] = 1; dp[1][2..

[C++][Baekjoon] 16974๋ฒˆ ์„œ์šธ ์ง€ํ•˜์ฒ  2ํ˜ธ์„ 

๋ฌธ์ œ https://www.acmicpc.net/problem/16947 16947๋ฒˆ: ์„œ์šธ ์ง€ํ•˜์ฒ  2ํ˜ธ์„  ์ฒซ์งธ ์ค„์— ์—ญ์˜ ๊ฐœ์ˆ˜ N(3 ≤ N ≤ 3,000)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ N๊ฐœ์˜ ์ค„์—๋Š” ์—ญ๊ณผ ์—ญ์„ ์—ฐ๊ฒฐํ•˜๋Š” ๊ตฌ๊ฐ„์˜ ์ •๋ณด๊ฐ€ ์ฃผ์–ด์ง„๋‹ค. ๊ฐ™์€ ๊ตฌ๊ฐ„์ด ์—ฌ๋Ÿฌ ๋ฒˆ ์ฃผ์–ด์ง€๋Š” ๊ฒฝ์šฐ๋Š” ์—†๊ณ , ์—ญ์€ 1๋ฒˆ๋ถ€ํ„ฐ N๋ฒˆ๊นŒ์ง€ ๋ฒˆํ˜ธ www.acmicpc.net ํ’€์ด ์‚ฌ์ง„ ์ฐธ๊ณ  ์ฝ”๋“œ #include #include #include #include using namespace std; const int MAX = 3001; int n;//๋ฌธ์ œ์—์„œ ์ฃผ์–ด์ง„ ์—ญ์˜ ๊ฐœ์ˆ˜ vector stations[MAX];//๋ฌธ์ œ์—์„œ ์ฃผ์–ด์ง„ ์—ญ ์ •๋ณด bool visited[MAX];//BFS/DFS ํƒ์ƒ‰์„ ์œ„ํ•œ ๋ฐฉ๋ฌธ์ฒดํฌ ๋ฐฐ์—ด bool cycle_..

[C++][BAEKJOON][Dijkstra Alg] 1261๋ฒˆ ์•Œ๊ณ ์ŠคํŒŸ

๋ฌธ์ œ https://www.acmicpc.net/problem/1261 1261๋ฒˆ: ์•Œ๊ณ ์ŠคํŒŸ ์ฒซ์งธ ์ค„์— ๋ฏธ๋กœ์˜ ํฌ๊ธฐ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ๊ฐ€๋กœ ํฌ๊ธฐ M, ์„ธ๋กœ ํฌ๊ธฐ N (1 ≤ N, M ≤ 100)์ด ์ฃผ์–ด์ง„๋‹ค. ๋‹ค์Œ N๊ฐœ์˜ ์ค„์—๋Š” ๋ฏธ๋กœ์˜ ์ƒํƒœ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์ˆซ์ž 0๊ณผ 1์ด ์ฃผ์–ด์ง„๋‹ค. 0์€ ๋นˆ ๋ฐฉ์„ ์˜๋ฏธํ•˜๊ณ , 1์€ ๋ฒฝ์„ ์˜๋ฏธ www.acmicpc.net ์ฝ”๋“œ #include #include using namespace std; void dijkstra(); int M, N;//M: ์—ด, N: ํ–‰ int map[101][101];//๋ฌธ์ œ์—์„œ ์ฃผ์–ด์ง„ map์ •๋ณด int cost[101][101];//map์˜ ๋น„์šฉ์„ ์ €์žฅํ•  ๋ฐฐ์—ด int direction[4][2] = { {0,1},{1,0},{0,-1},{-1,0} };//์˜ค..

[C++][ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค][2021 ์นด์นด์˜ค ์ฑ„์šฉ์—ฐ๊ณ„ํ˜• ์ธํ„ด์‹ญ] ์ˆซ์ž ๋ฌธ์ž์—ด๊ณผ ์˜๋‹จ์–ด

๋ฌธ์ œ) ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ์ˆซ์ž ๋ฌธ์ž์—ด๊ณผ ์˜๋‹จ์–ด ๋„ค์˜ค์™€ ํ”„๋กœ๋„๊ฐ€ ์ˆซ์ž๋†€์ด๋ฅผ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋„ค์˜ค๊ฐ€ ํ”„๋กœ๋„์—๊ฒŒ ์ˆซ์ž๋ฅผ ๊ฑด๋„ฌ ๋•Œ ์ผ๋ถ€ ์ž๋ฆฟ์ˆ˜๋ฅผ ์˜๋‹จ์–ด๋กœ ๋ฐ”๊พผ ์นด๋“œ๋ฅผ ๊ฑด๋„ค์ฃผ๋ฉด ํ”„๋กœ๋„๋Š” ์›๋ž˜ ์ˆซ์ž๋ฅผ ์ฐพ๋Š” ๊ฒŒ์ž„์ž…๋‹ˆ๋‹ค. ๋‹ค์Œ์€ ์ˆซ์ž์˜ ์ผ๋ถ€ ์ž programmers.co.kr ๋ฌธ์ œ์„ค๋ช…) ์ˆซ์ž+๋ฌธ์ž๋กœ ์ฃผ์–ด์ง€๋Š” string ์„ ๋ชจ๋‘ ์ˆซ์ž๋กœ ์น˜ํ™˜ํ•˜์—ฌ ์ถœ๋ ฅํ•ด์•ผ ํ•œ๋‹ค. ๋ฌธ์ œํ’€์ด) ์ž…์ถœ๋ ฅ ์˜ˆ๋ฅผ ๋ณด๋ฉด, "one4sevennight" ์„ 1478๋กœ ๋ฐ”๊ฟ”์„œ ์ถœ๋ ฅํ–ˆ๋‹ค. ์ฆ‰, ๋ฌธ์ž๋Š” ์ˆซ์ž๋กœ ๋ณ€ํ™˜ํ•ด์•ผํ•˜๊ณ  ์ˆซ์ž๋Š” ๊ทธ๋Œ€๋กœ ์ถœ๋ ฅํ•˜๋ฉด ๋œ๋‹ค. ๋”ฐ๋ผ์„œ, string s ๋ฅผ i๋ฒˆ์งธ๋ถ€ํ„ฐ ํƒ์ƒ‰ํ•ด์„œ ์ˆซ์ž๊ฐ€ ๋‚˜์˜ค๋ฉด ์ƒˆ๋กœ์šด ๋ฌธ์ž์—ด์ธ string numString์— ๋„ฃ๊ณ , ๋ฌธ์ž๊ฐ€ ๋‚˜์˜ค๋ฉด ํ•ด๋‹น ๋ฌธ์ž๊ฐ€ zero ~ nine ์ค‘์— ์–ด๋–ค ์ˆซ์ž์ธ์ง€๋ฅผ ์•Œ์•„๋‚ด์„œ numSt..

[C++][ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] 2021 ์นด์นด์˜ค ์ธํ„ด์‹ญ ๋ฌธ์ œ, ๊ฑฐ๋ฆฌ๋‘๊ธฐ ํ™•์ธํ•˜๊ธฐ

[๋ฌธ์ œ] ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ๊ฑฐ๋ฆฌ๋‘๊ธฐ ํ™•์ธํ•˜๊ธฐ [["POOOP", "OXXOX", "OPXPX", "OOXOX", "POXXP"], ["POOPX", "OXPXP", "PXXXO", "OXXXO", "OOOPP"], ["PXOPX", "OXOXP", "OXPOX", "OXXOP", "PXPOX"], ["OOOXX", "XOOOX", "OOOXX", "OXOOX", "OOOOO"], ["PXPXP", "XPXPX", "PXPXP", "XPXPX", "PXPXP"]] [1, 0, 1, 1, 1] programmers.co.kr [๋ฌธ์ œ์กฐ๊ฑด] ๋Œ€๊ธฐ์‹ค์€ 5๊ฐœ์ด๋ฉฐ, ๊ฐ ๋Œ€๊ธฐ์‹ค์€ 5x5 ํฌ๊ธฐ์ž…๋‹ˆ๋‹ค. ๊ฑฐ๋ฆฌ๋‘๊ธฐ๋ฅผ ์œ„ํ•˜์—ฌ ์‘์‹œ์ž๋“ค ๋ผ๋ฆฌ๋Š” ๋งจํ•ดํŠผ ๊ฑฐ๋ฆฌ๊ฐ€ 2 ์ดํ•˜๋กœ ์•‰์ง€ ๋ง์•„ ์ฃผ์„ธ์š”. ๋‹จ ์‘์‹œ์ž๊ฐ€ ์•‰์•„์žˆ๋Š” ์ž๋ฆฌ ์‚ฌ์ด๊ฐ€ ํŒŒํ‹ฐ์…˜..

[C++][BAEKJOON][DP] 2156๋ฒˆ ํฌ๋„์ฃผ ์‹œ์‹

[๋ฌธ์ œ] 2156๋ฒˆ: ํฌ๋„์ฃผ ์‹œ์‹ ํšจ์ฃผ๋Š” ํฌ๋„์ฃผ ์‹œ์‹ํšŒ์— ๊ฐ”๋‹ค. ๊ทธ ๊ณณ์— ๊ฐ”๋”๋‹ˆ, ํ…Œ์ด๋ธ” ์œ„์— ๋‹ค์–‘ํ•œ ํฌ๋„์ฃผ๊ฐ€ ๋“ค์–ด์žˆ๋Š” ํฌ๋„์ฃผ ์ž”์ด ์ผ๋ ฌ๋กœ ๋†“์—ฌ ์žˆ์—ˆ๋‹ค. ํšจ์ฃผ๋Š” ํฌ๋„์ฃผ ์‹œ์‹์„ ํ•˜๋ ค๊ณ  ํ•˜๋Š”๋ฐ, ์—ฌ๊ธฐ์—๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋‘ ๊ฐ€์ง€ ๊ทœ www.acmicpc.net [์„ค๋ช…] โ˜…์ด ๋ฌธ์ œ๊ฐ€ DP ์ธ ์ด์œ : ํ˜„์žฌ ๊ฐ’์„ ๊ตฌํ•  ๋•Œ ์ด์ „ ๊ฒฐ๊ณผ๊ฐ’์„ ์ด์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋ชจ์–‘์ด ๋‚˜์˜ค๊ธฐ ๋•Œ๋ฌธ ํฌ๋„์ฃผ๊ฐ€ 1์ž” ์ผ ๋•Œ, 1์ž” ๋ชจ๋‘๋ฅผ ์„ ํƒํ•ด์•ผ ์ตœ๋Œ€์ด๋‹ค. ํฌ๋„์ฃผ๊ฐ€ 2์ž” ์ผ ๋•Œ, 2์ž” ๋ชจ๋‘๋ฅผ ์„ ํƒํ•ด์•ผ ์ตœ๋Œ€์ด๋‹ค. ํฌ๋„์ฃผ๊ฐ€ 3์ž” ์ผ ๋•Œ, 3๋ฒˆ์งธ ์ž”์„ ์„ ํƒํ•  ๊ฒฝ์šฐ์™€ ์„ ํƒํ•˜์ง€ ์•Š์„ ๊ฒฝ์šฐ๋กœ ๋‚˜๋ˆŒ ์ˆ˜ ์žˆ๋‹ค. ์ด ๋•Œ, 3๋ฒˆ์งธ ์ž”์„ ์„ ํƒํ•˜์ง€ ์•Š์„ ๊ฒฝ์šฐ๋Š” ํฌ๋„์ฃผ๊ฐ€ 2์ž” ์ด์—ˆ์„ ๋•Œ ๊ตฌํ•œ ์ตœ๋Œ€๊ฐ’๊ณผ ๊ฐ™๋‹ค. 3๋ฒˆ์งธ ์ž”์„ ์„ ํƒํ–ˆ๋‹ค๋ฉด, 2๋ฒˆ์งธ ์ž”์„ ์„ ํƒํ•˜๊ณ  1๋ฒˆ์งธ ์ž”์„ ์„ ํƒ..

728x90