Banner

My Tech Blog (DFS)

๐Ÿ“‘ 1. ๋ฌธ์ œ์„ค๋ช…๐Ÿ’ก 2. ์ ‘๊ทผ๋ฐฉ์‹ dfs(๊นŠ์ด ์šฐ์„  ํƒ์ƒ‰)์œผ๋กœ A,E,I,O,U๋กœ ์กฐํ•ฉํ•ด์„œ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“  ๋‹จ์–ด๋ฅผ ๋ฆฌ์ŠคํŠธ์— ๋„ฃ์–ด ์ค€๋‹ค.๊ทธ๋ฆฌ๊ณ  list์˜ ์‚ฌ์ด์ฆˆ๋งŒํผ ๋ฐ˜๋ณต๋ฌธ์„ ๋Œ๋ฆฌ๋ฉด์„œ word๋ž‘ ์ผ์น˜ํ•˜๋Š” ๋‹จ์–ด๊ฐ€ ๋“ค์–ด ์žˆ๋Š” ์นธ์˜ ์ธ๋ฑ์Šค๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.  โญ 3. ์ •๋‹ต์ฝ”๋“œimport java.util.*;class Solution { static List list; static String [] words = {"A", "E", "I", "O", "U"}; public int solution(String word) { int answer = 0; list = new ArrayList(); dfs("", 0); ..
๐Ÿ“‘ 1. ๋ฌธ์ œ์„ค๋ช… ์ž…์ถœ๋ ฅ ์˜ˆ ์„ค๋ช…์ž…์ถœ๋ ฅ ์˜ˆ #1๋‹ค์Œ ๊ทธ๋ฆผ์€ ์ฃผ์–ด์ง„ ์ž…๋ ฅ์„ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ• ์ค‘ ํ•˜๋‚˜๋ฅผ ๋‚˜ํƒ€๋‚ธ ๊ฒƒ์ž…๋‹ˆ๋‹ค. 4๋ฒˆ๊ณผ 7๋ฒˆ์„ ์—ฐ๊ฒฐํ•˜๋Š” ์ „์„ ์„ ๋Š์œผ๋ฉด ๋‘ ์ „๋ ฅ๋ง์€ ๊ฐ 6๊ฐœ์™€ 3๊ฐœ์˜ ์†ก์ „ํƒ‘์„ ๊ฐ€์ง€๋ฉฐ, ์ด๋ณด๋‹ค ๋” ๋น„์Šทํ•œ ๊ฐœ์ˆ˜๋กœ ์ „๋ ฅ๋ง์„ ๋‚˜๋ˆŒ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.๋˜ ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•์œผ๋กœ๋Š” 3๋ฒˆ๊ณผ 4๋ฒˆ์„ ์—ฐ๊ฒฐํ•˜๋Š” ์ „์„ ์„ ๋Š์–ด๋„ ์ตœ์„ ์˜ ์ •๋‹ต์„ ๋„์ถœํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž…์ถœ๋ ฅ ์˜ˆ #2๋‹ค์Œ ๊ทธ๋ฆผ์€ ์ฃผ์–ด์ง„ ์ž…๋ ฅ์„ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋‚˜ํƒ€๋‚ธ ๊ฒƒ์ž…๋‹ˆ๋‹ค.2๋ฒˆ๊ณผ 3๋ฒˆ์„ ์—ฐ๊ฒฐํ•˜๋Š” ์ „์„ ์„ ๋Š์œผ๋ฉด ๋‘ ์ „๋ ฅ๋ง์ด ๋ชจ๋‘ 2๊ฐœ์˜ ์†ก์ „ํƒ‘์„ ๊ฐ€์ง€๊ฒŒ ๋˜๋ฉฐ, ์ด ๋ฐฉ๋ฒ•์ด ์ตœ์„ ์ž…๋‹ˆ๋‹ค. ์ž…์ถœ๋ ฅ ์˜ˆ #3๋‹ค์Œ ๊ทธ๋ฆผ์€ ์ฃผ์–ด์ง„ ์ž…๋ ฅ์„ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋‚˜ํƒ€๋‚ธ ๊ฒƒ์ž…๋‹ˆ๋‹ค. 3๋ฒˆ๊ณผ 7๋ฒˆ์„ ์—ฐ๊ฒฐํ•˜๋Š” ์ „์„ ์„ ๋Š์œผ๋ฉด ๋‘ ์ „๋ ฅ๋ง์ด ๊ฐ๊ฐ 4๊ฐœ์™€ 3๊ฐœ์˜ ์†ก์ „ํƒ‘์„ ๊ฐ€์ง€๊ฒŒ ๋˜๋ฉฐ, ์ด ๋ฐฉ๋ฒ•์ด ์ตœ..
๐Ÿ“‘ 1. ๋ฌธ์ œ์„ค๋ช… ๐Ÿ’ก 2. ๋‚˜์˜ ์ฝ”๋“œ ๋ฌธ์ œ์—์„œ ๊ตฌํ•ด์•ผ ํ•˜๋Š” ๊ฒƒ - ์ตœ๋Œ€ ๋ช‡ ๋ฒˆ ๋˜์ „์„ ๋Œ ์ˆ˜ ์žˆ๋Š”์ง€ ํšŸ์ˆ˜ ์ฆ‰, ์กด์žฌํ•˜๋Š” ๋˜์ „๋“ค์„๋กœ ๋„๋Š” ์ˆœ์„œ ๋ฐ”๊ฟ”๊ฐ€๋ฉด์„œ ๊ฐ€๋Šฅํ•œ ๋ชจ๋“  ์กฐํ•ฉ์„ ๋งŒ๋“ ๋‹ค.๋งŒ์•ฝ A,B,C ๋˜์ „์ด ์žˆ๋‹ค๋ฉด? `A-B-C`,`A-C-B`,`B-A-C`,`B-C-A`, `C-A-B`, `C-B-A` ์กฐํ•ฉ์„ ๋ชจ๋‘ ์ˆœํšŒํ•˜๋ฉด์„œ์ตœ๋Œ€๋กœ ๋ช‡ ๋ฒˆ ๋Œ ์ˆ˜ ์žˆ๋Š”์ง€ ์นด์šดํŒ… ํ•ด ์ค€๋‹ค. ๋ฐฑํŠธ๋ž˜ํ‚น๊ณผ DFS(๊นŠ์ด ์šฐ์„  ํƒ์ƒ‰)๋ฐฑํŠธ๋ž˜ํ‚น๊ณผ dfs๋กœ ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ์กฐํ•ฉ ํ•ด ์ค€๋‹ค.depth ๋Š” ํƒ์ƒ‰ํšŸ์ˆ˜์ด๋‹ค.๊ตฌํ•˜๋Š” ์ˆœ๊ฐ„ answer = Math.max(answer, depth) ํ•ด์„œ ์ตœ๋Œ“๊ฐ’ ์—…๋ฐ์ดํŠธclass Solution { // ์ „์—ญ ๋ณ€์ˆ˜ ์„ ์–ธ public static int answer; // ์ตœ๋Œ€ ๋˜์ „ ํƒํ—˜ ํšŸ์ˆ˜ ..
์ธ์ ˆ๋ฏธ์˜€๋˜๊ฒƒ
'DFS' ํƒœ๊ทธ์˜ ๊ธ€ ๋ชฉ๋ก
์ƒ๋‹จ์œผ๋กœ