ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค 48

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/PythonํŒŒ์ด์ฌ] ๋ชจ๋‘ 0์œผ๋กœ ๋งŒ๋“ค๊ธฐ

๋ฌธ์ œ ์ถœ์ฒ˜: https://programmers.co.kr/learn/courses/30/lessons/76503 ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ๋ชจ๋‘ 0์œผ๋กœ ๋งŒ๋“ค๊ธฐ ๊ฐ ์ ์— ๊ฐ€์ค‘์น˜๊ฐ€ ๋ถ€์—ฌ๋œ ํŠธ๋ฆฌ๊ฐ€ ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค. ๋‹น์‹ ์€ ๋‹ค์Œ ์—ฐ์‚ฐ์„ ํ†ตํ•˜์—ฌ, ์ด ํŠธ๋ฆฌ์˜ ๋ชจ๋“  ์ ๋“ค์˜ ๊ฐ€์ค‘์น˜๋ฅผ 0์œผ๋กœ ๋งŒ๋“ค๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค. ์ž„์˜์˜ ์—ฐ๊ฒฐ๋œ ๋‘ ์ ์„ ๊ณจ๋ผ์„œ ํ•œ์ชฝ์€ 1 ์ฆ๊ฐ€์‹œํ‚ค๊ณ , ๋‹ค๋ฅธ ํ•œ programmers.co.kr ๋ฌธ์ œ ์„ค๋ช… DFS๋กœ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•œ๋‹ค๋Š” ์•„์ด๋””์–ด๊ฐ€ ์•ˆ ๋– ์˜ฌ๋ผ์„œ ์‹œ๊ฐ„ ์ดˆ๊ณผ๊ฐ€ ๋‚ฌ๋˜ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. ์ •์ ์„ ๋ชจ๋‘ ๋ฐฉ๋ฌธํ•˜๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ DFS๊ฐ€ ์™œ ์•ˆ ๋– ์˜ฌ๋ž์„๊นŒ์š”? ์ €๋Š” ๋ฐ”๋ณด์ž…๋‹ˆ๋‹ค. ๋งŒ์•ฝ ๋ฆฌ์ŠคํŠธ a์˜ ์›์†Œ์˜ ํ•ฉ์ด 0์ด ๋˜์ง€ ์•Š๋Š”๋‹ค๋ฉด, ์ฃผ์–ด์ง„ ์—ฐ์‚ฐ์„ ํ†ตํ•ด ํŠธ๋ฆฌ์˜ ๋ชจ๋“  ๊ฐ€์ค‘์น˜๋ฅผ 0์œผ๋กœ ๋งŒ๋“ค ์ˆ˜ ์—†์œผ๋ฏ€๋กœ -1์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. DFS๋ฅผ ์ด์šฉํ•ด์„œ ์ •์ ์„ ..

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/PythonํŒŒ์ด์ฌ] ์ง•๊ฒ€๋‹ค๋ฆฌ ๊ฑด๋„ˆ๊ธฐ

๋ฌธ์ œ ๋งํฌ: https://programmers.co.kr/learn/courses/30/lessons/64062 ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ์ง•๊ฒ€๋‹ค๋ฆฌ ๊ฑด๋„ˆ๊ธฐ [2, 4, 5, 3, 2, 1, 4, 2, 5, 1] 3 3 programmers.co.kr ๋ฌธ์ œ ์„ค๋ช… ๊ฑด๋„ ์ˆ˜ ์žˆ๋Š” ์‚ฌ๋žŒ์˜ ์ˆ˜๋ฅผ ์ด์ง„ ํƒ์ƒ‰์„ ํ†ตํ•ด ๊ตฌํ•ฉ๋‹ˆ๋‹ค. m๋ช…์˜ ์‚ฌ๋žŒ์— ๋Œ€ํ•ด์„œ ์ƒ๊ฐํ•ด๋ณด๋ฉด, ํ•œ ๋ฒˆ์— ๊ฑด๋„ˆ์•ผ ํ•˜๋Š” ๋””๋”ค๋Œ์˜ ๊ฐœ์ˆ˜๊ฐ€ k๊ฐœ๋ณด๋‹ค ํฌ๋‹ค๋ฉด m๋ช…์˜ ์‚ฌ๋žŒ์€ ๊ฑด๋„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ m๋ณด๋‹ค ์ž‘์€ ๊ฐ’์œผ๋กœ ๋‹ค์Œ ์ด์ง„ ํƒ์ƒ‰์„ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ๋งŒ์•ฝ ํ•œ ๋ฒˆ์— ๊ฑด๋„ˆ์•ผ ํ•˜๋Š” ๋””๋”ค๋Œ์˜ ๊ฐœ์ˆ˜๊ฐ€ k๊ฐœ ์ดํ•˜๋ผ๋ฉด m๋ช…์˜ ์‚ฌ๋žŒ์ด ๋‹ค๋ฆฌ๋ฅผ ๊ฑด๋„ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ m๋ณด๋‹ค ํฐ ๊ฐ’์œผ๋กœ ๋‹ค์Œ ์ด์ง„ ํƒ์ƒ‰์„ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์ด์ง„ ํƒ์ƒ‰์˜ start, end๋ฅผ ์ดˆ๊ธฐํ™”ํ•ฉ๋‹ˆ๋‹ค. ํ•œ ๋ฒˆ์— ๊ฑด๋„ˆ์•ผ ํ•˜๋Š” ๋””๋”ค๋Œ์˜..

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค / PythonํŒŒ์ด์ฌ] ๋ถˆ๋Ÿ‰ ์‚ฌ์šฉ์ž

๋ฌธ์ œ ๋งํฌ: https://programmers.co.kr/learn/courses/30/lessons/64064 ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ๋ถˆ๋Ÿ‰ ์‚ฌ์šฉ์ž ๊ฐœ๋ฐœํŒ€ ๋‚ด์—์„œ ์ด๋ฒคํŠธ ๊ฐœ๋ฐœ์„ ๋‹ด๋‹นํ•˜๊ณ  ์žˆ๋Š” "๋ฌด์ง€"๋Š” ์ตœ๊ทผ ์ง„ํ–‰๋œ ์นด์นด์˜ค์ด๋ชจํ‹ฐ์ฝ˜ ์ด๋ฒคํŠธ์— ๋น„์ •์ƒ์ ์ธ ๋ฐฉ๋ฒ•์œผ๋กœ ๋‹น์ฒจ์„ ์‹œ๋„ํ•œ ์‘๋ชจ์ž๋“ค์„ ๋ฐœ๊ฒฌํ•˜์˜€์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฐ ์‘๋ชจ์ž๋“ค์„ ๋”ฐ๋กœ ๋ชจ์•„ ๋ถˆ๋Ÿ‰ programmers.co.kr ๋ฌธ์ œ ์„ค๋ช… permutation์„ ์ด์šฉํ•ด user_id์˜ ๋ชจ๋“  ๊ฐ€๋Šฅํ•œ ์ˆœ์—ด์„ ๊ตฌํ•œ ๋’ค re(์ •๊ทœํ‘œํ˜„์‹)์„ ์ด์šฉํ•ด ์ œ์žฌ ์•„์ด๋””์™€ ์ผ์น˜ํ•˜๋Š”์ง€๋ฅผ ํ™•์ธํ–ˆ์Šต๋‹ˆ๋‹ค. 1. ์ˆœ์—ด ๋งŒ๋“ค๊ธฐ - banned_id์˜ ๊ฐœ์ˆ˜๋งŒํผ user_id์˜ ์›์†Œ๋ฅผ ๋ฝ‘์•„์„œ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ์ˆœ์—ด์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. 2. ํ•ด๋‹น ์ˆœ์—ด๋กœ ์ œ์žฌ ์•„์ด๋”” ๋ชฉ๋ก์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์ธ - ๋ฌธ์ž์—ด์˜ ๊ธธ์ด๊ฐ€ ๋‹ค๋ฅด..

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค / PythonํŒŒ์ด์ฌ] ํŠœํ”Œ

๋ฌธ์ œ ๋งํฌ: https://programmers.co.kr/learn/courses/30/lessons/64065 ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ํŠœํ”Œ "{{2},{2,1},{2,1,3},{2,1,3,4}}" [2, 1, 3, 4] "{{1,2,3},{2,1},{1,2,4,3},{2}}" [2, 1, 3, 4] "{{4,2,3},{3},{2,3,4,1},{2,3}}" [3, 2, 4, 1] programmers.co.kr ๋ฌธ์ œ ์„ค๋ช… ํŠœํ”Œ (a1, a2, a3, a4)๋ฅผ ํ‘œํ˜„ํ•˜๋Š” ์ง‘ํ•ฉ์„ ์›์†Œ์˜ ๊ฐœ์ˆ˜๊ฐ€ ์ž‘์€ ์ˆœ์„œ๋Œ€๋กœ ์ •๋ ฌํ•˜๋ฉด {{a1}, {a1, a2}, {a1, a2, a3}, {a1, a2, a3, a4}}๊ฐ€ ๋ฉ๋‹ˆ๋‹ค. ์ด๋•Œ ์ง‘ํ•ฉ์—์„œ ํŠœํ”Œ์„ ๊ตฌํ•˜๋Š” ๋ฐฉ๋ฒ•์€, {ai} = s[i] - s[i - 1] ์ž…๋‹ˆ๋‹ค. (ํŽธ์˜์ƒ ์ธ..

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/PythonํŒŒ์ด์ฌ] ํฌ๋ ˆ์ธ ์ธํ˜•๋ฝ‘๊ธฐ ๊ฒŒ์ž„

๋ฌธ์ œ ๋งํฌ: https://programmers.co.kr/learn/courses/30/lessons/64061 ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ํฌ๋ ˆ์ธ ์ธํ˜•๋ฝ‘๊ธฐ ๊ฒŒ์ž„ [[0,0,0,0,0],[0,0,1,0,3],[0,2,5,0,1],[4,2,4,4,2],[3,5,1,3,1]] [1,5,3,5,1,2,1,4] 4 programmers.co.kr ๋ฌธ์ œ ์„ค๋ช… board์™€ moves์˜ ์ •๋ณด๋กœ ํฌ๋ ˆ์ธ ์ž‘๋™์„ ์‹œ๋ฎฌ๋ ˆ์ด์…˜ํ•ฉ๋‹ˆ๋‹ค. ์ด๋•Œ ๋ฐ”๊ตฌ๋‹ˆ๋Š” stack์œผ๋กœ ๊ตฌํ˜„ํ•˜์—ฌ ๋งŒ์•ฝ ํ˜„์žฌ ๋ฝ‘์€ ์ธํ˜•์ด stack top์˜ ์ธํ˜•๊ณผ ๊ฐ™์€ ์ข…๋ฅ˜๋ผ๋ฉด ์ธํ˜•์„ ์—†์• ์•ผ ํ•ฉ๋‹ˆ๋‹ค. doll์— ํ˜„์žฌ ํฌ๋ ˆ์ธ ์ž‘๋™์— ๋ฝ‘ํž ์ธํ˜•์˜ ๋ฒˆํ˜ธ๋ฅผ ์ €์žฅํ•ฉ๋‹ˆ๋‹ค. ๋งŒ์•ฝ doll == 0์ด๋ฉด ๋ฝ‘ํž ์ธํ˜•์ด ์—†์œผ๋ฏ€๋กœ ๋‹ค์Œ ํฌ๋ ˆ์ธ ์ž‘๋™์œผ๋กœ ๋„˜์–ด๊ฐ‘๋‹ˆ๋‹ค. doll์ด ๋ฐ”๊ตฌ๋‹ˆ์— ์ œ์ผ ์œ„์— ์žˆ..

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/PythonํŒŒ์ด์ฌ] ํ”„๋ Œ์ฆˆ4๋ธ”๋ก(2018 ์นด์นด์˜ค ์ฝ”๋”ฉํ…Œ์ŠคํŠธ 1์ฐจ)

๋ฌธ์ œ ๋งํฌ: programmers.co.kr/learn/courses/30/lessons/17679์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - [1์ฐจ] ํ”„๋ Œ์ฆˆ4๋ธ”๋กํ”„๋ Œ์ฆˆ4๋ธ”๋ก ๋ธ”๋ผ์ธ๋“œ ๊ณต์ฑ„๋ฅผ ํ†ต๊ณผํ•œ ์‹ ์ž… ์‚ฌ์› ๋ผ์ด์–ธ์€ ์‹ ๊ทœ ๊ฒŒ์ž„ ๊ฐœ๋ฐœ ์—…๋ฌด๋ฅผ ๋งก๊ฒŒ ๋˜์—ˆ๋‹ค. ์ด๋ฒˆ์— ์ถœ์‹œํ•  ๊ฒŒ์ž„ ์ œ๋ชฉ์€ "ํ”„๋ Œ์ฆˆ4๋ธ”๋ก". ๊ฐ™์€ ๋ชจ์–‘์˜ ์นด์นด์˜คํ”„๋ Œ์ฆˆ ๋ธ”๋ก์ด 2×2 ํ˜•ํƒœ๋กœ 4๊ฐœ๊ฐ€ ๋ถ™programmers.co.kr ๋ฌธ์ œ ์„ค๋ช…board ๋ฌธ์ž์—ด ๋ฐฐ์—ด ์ž…๋ ฅ์„ ๋ฆฌ์ŠคํŠธ๋กœ ๋ฐ”๊ฟ”์„œ ์ฒ˜๋ฆฌํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด ๋’ค์— ๋ธ”๋ก์ด ๋” ์ด์ƒ ์ง€์›Œ์ง€์ง€ ์•Š์„ ๋•Œ๊นŒ์ง€ while๋ฌธ์„ ๋Œ๋ฉด์„œ ๋ธ”๋ก์„ ์ง€์› ์Šต๋‹ˆ๋‹ค. while๋ฌธ์—์„œ ํ•œ ๋ฒˆ์˜ ๋ฐ˜๋ณต๋งˆ๋‹ค ๋‹ค์Œ์„ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค. mxn ํฌ๊ธฐ์˜ remove ๋ฐฐ์—ด์„ 0์œผ๋กœ ์ดˆ๊ธฐํ™”ํ•ฉ๋‹ˆ๋‹ค. (0, 0) ๋ธ”๋ก๋ถ€ํ„ฐ (m-1, n-1) ๋ธ”๋ก๊นŒ์ง€ ๊ฐ™์€ ๋ชจ์–‘์˜ 2x2 ๋ธ”๋ก์„ ์ฐพ์œผ..

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/PythonํŒŒ์ด์ฌ] ๋‰ด์Šค ํด๋Ÿฌ์Šคํ„ฐ๋ง(2018 ์นด์นด์˜ค ์ฝ”๋”ฉํ…Œ์ŠคํŠธ 1์ฐจ)

๋ฌธ์ œ ๋งํฌ: programmers.co.kr/learn/courses/30/lessons/17677 ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - [1์ฐจ] ๋‰ด์Šค ํด๋Ÿฌ์Šคํ„ฐ๋ง ๋‰ด์Šค ํด๋Ÿฌ์Šคํ„ฐ๋ง ์—ฌ๋Ÿฌ ์–ธ๋ก ์‚ฌ์—์„œ ์Ÿ์•„์ง€๋Š” ๋‰ด์Šค, ํŠนํžˆ ์†๋ณด์„ฑ ๋‰ด์Šค๋ฅผ ๋ณด๋ฉด ๋น„์Šท๋น„์Šทํ•œ ์ œ๋ชฉ์˜ ๊ธฐ์‚ฌ๊ฐ€ ๋งŽ์•„ ์ •์ž‘ ํ•„์š”ํ•œ ๊ธฐ์‚ฌ๋ฅผ ์ฐพ๊ธฐ๊ฐ€ ์–ด๋ ต๋‹ค. Daum ๋‰ด์Šค์˜ ๊ฐœ๋ฐœ ์—…๋ฌด๋ฅผ ๋งก๊ฒŒ ๋œ ์‹ ์ž…์‚ฌ์› ํŠœ๋ธŒ programmers.co.kr ๋ฌธ์ œ ์„ค๋ช… ๋‘ ์ง‘ํ•ฉ A, B ์‚ฌ์ด์˜ ์ž์นด๋“œ ์œ ์‚ฌ๋„ J(A, B)๋Š” ๋‘ ์ง‘ํ•ฉ์˜ ๊ต์ง‘ํ•ฉ ํฌ๊ธฐ๋ฅผ ๋‘ ์ง‘ํ•ฉ์˜ ํ•ฉ์ง‘ํ•ฉ ํฌ๊ธฐ๋กœ ๋‚˜๋ˆˆ ๊ฐ’์œผ๋กœ ์ •์˜๋œ๋‹ค. (ํ•ฉ์ง‘ํ•ฉ์˜ ํฌ๊ธฐ) = (A์˜ ํฌ๊ธฐ + B์˜ ํฌ๊ธฐ - ๊ต์ง‘ํ•ฉ์˜ ํฌ๊ธฐ) ์‹์ด ๋งŒ์กฑํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๊ฒฐ๊ตญ ์ž์นด๋“œ ์œ ์‚ฌ๋„๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ •์˜ํ•  ์ˆ˜ ์žˆ๋‹ค. J(A, B) = (๊ต์ง‘ํ•ฉ์˜ ํฌ๊ธฐ) / (A์˜ ํฌ๊ธฐ + B์˜ ํฌ..

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/PythonํŒŒ์ด์ฌ] ์…”ํ‹€๋ฒ„์Šค(2018 ์นด์นด์˜ค ์ฝ”๋”ฉํ…Œ์ŠคํŠธ 1์ฐจ)

๋ฌธ์ œ ๋งํฌ: programmers.co.kr/learn/courses/30/lessons/17678์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - [1์ฐจ] ์…”ํ‹€๋ฒ„์Šค10 60 45 ["23:59","23:59", "23:59", "23:59", "23:59", "23:59", "23:59", "23:59", "23:59", "23:59", "23:59", "23:59", "23:59", "23:59", "23:59", "23:59"] "18:00"programmers.co.kr ๋ฌธ์ œ ์„ค๋ช…์‹œ๊ฐ„ ๊ณ„์‚ฐ์„ ์‰ฝ๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•ด์„œ "HH:MM" ํ˜•์‹์˜ ์‹œ๊ฐ„์„ ๋ชจ๋‘ ๋ถ„์œผ๋กœ ๋ณ€ํ™˜ํ•ด์„œ ์ƒ๊ฐํ–ˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด "09:10"์ธ ๊ฒฝ์šฐ 9*60 + 10 = 550(๋ถ„)์œผ๋กœ ๋ณ€ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฐ ์‹์œผ๋กœ ๋ณ€ํ™˜ํ•˜๋ฉด ์ •์ˆ˜ ๋น„๊ต ์—ฐ์‚ฐ์„ ํ†ตํ•ด ๋ˆ„๊ฐ€ ๋จผ์ € ์™”๋Š”์ง€๋ฅผ ํŒ๋‹จํ•  ์ˆ˜..