๐Ÿ‘ฉ๐Ÿป‍๐Ÿ’ป iOSun
article thumbnail
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค 150368] ์ด๋ชจํ‹ฐ์ฝ˜ ํ• ์ธํ–‰์‚ฌ swift

๋ฌธ์ œ ์„ค๋ช… ๋ฌธ์ œ ํ’€์ด ํ• ์ธ์œจ์ด ๋†’๋‹ค๊ณ  ์ข‹์€ ๊ฒƒ๋„ ์•„๋‹ˆ๊ณ  ๊ธฐ์ค€์•ก์ด ๋‚ฎ๋‹ค๊ณ  ์ข‹์€ ๊ฒƒ๋„ ์•„๋‹Œ ๊ฒƒ ๊ฐ™์•˜๋‹ค. ๋”ฐ๋ผ์„œ ํ• ์ธํ•˜๋Š” ๋ชจ๋“  ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ๋”ฐ์ง€๋ฉฐ ๊ณ„์‚ฐํ•ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— DFS๋ฅผ ์‚ฌ์šฉํ–ˆ๋‹ค. DFS(ํ• ์ธ๊ฐœ์ˆ˜, [ํ• ์ธํผ์„ผํŠธ๋“ค]) ๋กœ ๋Œ๋ฆฌ๋ฉฐ ํ• ์ธ๊ฐœ์ˆ˜๊ฐ€ ์ด๋ชจํ‹ฐ์ฝ˜ ๊ฐœ์ˆ˜๋ž‘ ๊ฐ™์„ ๋•Œ ๋ฉˆ์ถ”๊ณ  ์ด๋ชจํ‹ฐ์ฝ˜ ์‚ฌ์šฉ์ž์˜ ์ˆ˜์™€ ์ด์•ก์„ ๊ณ„์‚ฐํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ๊ตฌํ˜„ํ–ˆ๋‹ค. ์ฝ”๋“œ import Foundation func solution(_ users:[[Int]], _ emoticons:[Int]) -> [Int] { // ๊ฐ€์ž…์ž ์ˆ˜, ํŒ๋งค์•ก ๊ณ„์‚ฐํ•ด์„œ ๋ฆฌํ„ด ex) [1, 5100] func calcResult(_ percents: [Int]) -> [Int] { var answer = [0, 0] for i in 0..

article thumbnail
[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค 86971] ์ „๋ ฅ๋ง์„ ๋‘˜๋กœ ๋‚˜๋ˆ„๊ธฐ swift

๋ฌธ์ œ ํ’€์ด DFS๋ฅผ ์ด์šฉํ•ด์„œ ํ’€์—ˆ๋‹ค. 1. ์ด์ค‘๋ฐฐ์—ด์— ์—ฐ๊ฒฐ์ ์„ ๋„ฃ๋Š”๋‹ค. (vertex๋Š” 1๋ถ€ํ„ฐ ์‹œ์ž‘์ด๊ธฐ ๋•Œ๋ฌธ์— 0์€ ๋น„์›Œ๋‘ ) ex) [[], [3], [3], [1,2,4]] 2. wires๋ฅผ ํฌ๋ฌธ์„ ๋Œ๋ฆฌ๋ฉฐ ์—ฐ๊ฒฐ์ ์„ ์ œ๊ฑฐํ•ด๋ณธ๋‹ค. 3. ํ•˜๋‚˜ ์ œ๊ฑฐํ•œ ์ƒํƒœ์—์„œ DFS๋ฅผ ๋Œ๋ ค๋ณธ๋‹ค. ์ด๋•Œ DFS๋Š” DFS(๊ทธ๋ž˜ํ”„, ํ˜„์žฌ์ •์ )์ด๊ณ  DFS๊ฐ€ ๊ฐˆ ์ˆ˜ ์žˆ๋Š” ๋๊นŒ์ง€ ๊ฐ”์„ ๋•Œ ๋ฐฉ๋ฌธํ•œ ์ •์  ๊ฐœ์ˆ˜ count๋ฅผ ๊ตฌํ•œ๋‹ค. (ํ•œ ์ชฝ์˜ depth๋งŒ ๊ตฌํ•ด๋„ ๋‹ค๋ฅธ ํ•œ์ชฝ์˜ ๊ฐœ์ˆ˜๋ฅผ ์•Œ ์ˆ˜ ์žˆ๊ธฐ๋•Œ๋ฌธ์— ๊ทธ๋ƒฅ 1๋ถ€ํ„ฐ ๋Œ๋ฆฌ๊ณ  ๋๊นŒ์ง€ ๊ฐ€๋ณธ๋‹ค.) 4. wires ํ•˜๋‚˜ ์ œ๊ฑฐํ• ๋•Œ๋งˆ๋‹ค ์†ก์ „ํƒ‘์˜ ๊ฐœ์ˆ˜ ์ฐจ์ด๋ฅผ ๊ตฌํ•œ๋‹ค. (๋‹ค์Œ wires๋บ„๋•Œ visited, count ์ดˆ๊ธฐํ™”) ์ฝ”๋“œ func solution(_ n:Int, _ wires:[[Int]]) -> Int..

article thumbnail
[๋ฐฑ์ค€ 1743] swift ์Œ์‹๋ฌผ ํ”ผํ•˜๊ธฐ: DFS

๋ฌธ์ œ ์„ค๋ช… https://www.acmicpc.net/problem/1743 1743๋ฒˆ: ์Œ์‹๋ฌผ ํ”ผํ•˜๊ธฐ ์ฒซ์งธ ์ค„์— ํ†ต๋กœ์˜ ์„ธ๋กœ ๊ธธ์ด N(1 ≤ N ≤ 100)๊ณผ ๊ฐ€๋กœ ๊ธธ์ด M(1 ≤ M ≤ 100) ๊ทธ๋ฆฌ๊ณ  ์Œ์‹๋ฌผ ์“ฐ๋ ˆ๊ธฐ์˜ ๊ฐœ์ˆ˜ K(1 ≤ K ≤ N×M)์ด ์ฃผ์–ด์ง„๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋‹ค์Œ K๊ฐœ์˜ ์ค„์— ์Œ์‹๋ฌผ์ด ๋–จ์–ด์ง„ ์ขŒํ‘œ (r, c)๊ฐ€ ์ฃผ์–ด์ง„๋‹ค www.acmicpc.net ๊ฐ„๋‹จํ•˜๊ฒŒ ์ƒํ•˜์ขŒ์šฐ๋กœ ์›€์ง์ผ ์ˆ˜ ์žˆ๊ณ  ๊ทธ ์“ฐ๋ ˆ๊ธฐ์˜ ํฌ๊ธฐ๋ฅผ ๊ตฌํ•˜๋Š” ๋ฌธ์ œ์ด๋‹ค. ๋ฌธ์ œ ํ’€์ด DFS๋กœ ํ’€์–ด๋ดค๋‹ค. 2์ฐจ์›๋ฐฐ์—ด๋กœ map๊ณผ visited ๋ฐฐ์—ด์„ ๋งŒ๋“ค๊ณ  ์“ฐ๋ ˆ๊ธฐ๋ฉด 1, ์•„๋‹ˆ๋ฉด 0์œผ๋กœ ํ‘œ์‹œํ–ˆ๋‹ค. 1000 0110 1100 ์œ„์˜ ์˜ˆ์ œ์—์„œ ์ด๋ ‡๊ฒŒ.. ๊ทธ๋ฆฌ๊ณ  for๋ฌธ์„ ๋Œ๋ฉด์„œ ์“ฐ๋ ˆ๊ธฐ์ด๊ณ  ๋ฐฉ๋ฌธํ•˜์ง€ ์•Š์€ ๊ฒฝ์šฐ์— DFS๋ฅผ ๋Œ๋ ค์ฃผ๋ฉฐ count๋ฅผ +1 ํ•ด์ฃผ์—ˆ๋‹ค...

article thumbnail
[๋ฐฑ์ค€ 1654] swift ๋žœ์„  ์ž๋ฅด๊ธฐ

๋ฌธ์ œ ์„ค๋ช… ๋ฌธ์ œ ํ’€์ด ์ฒ˜์Œ ์ ‘๊ทผ๋ฒ•์€ ๊ธธ์ด๊ฐ€ 100์ด๋ผ๊ณ  ๊ฐ€์ •ํ•˜๊ณ  n๊ฐœ ์ด์ƒ์˜ ๋žœ์„ ์ด ๋‚˜์˜ค๋Š”์ง€ ์ฒดํฌ, 100 -> 200 -> 300 ๋Š˜๋ ค๊ฐ€๋ฉฐ ์ƒ๊ฐํ•˜๋‹ค ์ด์ง„ํƒ์ƒ‰์„ ๋– ์˜ฌ๋ฆฌ๊ฒŒ ๋˜์—ˆ๋‹ค. (์™„์ „ํƒ์ƒ‰๋ณด๋‹ค ์†๋„๊ฐ€ ๋น ๋ฅด๊ธฐ ๋•Œ๋ฌธ์—) left๋Š” 1, right๋Š” ๊ฐ€์ง„๋žœ์„ ์˜ ์ตœ๋Œ€๊ธธ์ด๋กœ ๋‘์—ˆ๋‹ค. ๊ธฐ๋ณธ์ ์ธ ์ด์ง„ํƒ์ƒ‰ ํ’€์ด๋กœ ๋ฌธ์ œ ํ•ด๊ฒฐ! ์ฝ”๋“œ import Foundation let input = readLine()!.split(separator: " ").map {Int(String($0))!} let k = input[0], n = input[1] var arrs = [Int]() for _ in 0..

profile on loading

Loading...