[Swift] ๋ฐฑ์ค€ 10026 ์ ๋ก์ƒ‰์•ฝ
ยท
๐Ÿ“ ์ฝ”ํ…Œ/BOJ
import Foundation let N = Int(readLine()!)! var board = [[String]]() let dx = [0, 0, -1, 1] let dy = [-1, 1, 0, 0] // ์ƒํ•˜์ขŒ์šฐ var cnts = [0, 0] for _ in 0..
[Swift] ๋ฐฑ์ค€ 11399 ATM
ยท
๐Ÿ“ ์ฝ”ํ…Œ/BOJ
import Foundation /// N : ATM์•ž์— ์ค„ ์„œ ์žˆ๋Š” ์‚ฌ๋žŒ ์ˆ˜ /// P : i๋ฒˆ์งธ ์‚ฌ๋žŒ์ด ๋ˆ์„ ์ธ์ถœํ•˜๋Š”๋ฐ ๊ฑธ๋ฆฌ๋Š” ์‹œ๊ฐ„ let N = Int(readLine()!)! var Ps = readLine()!.components(separatedBy: " ").map { Int($0)! } Ps.sort() var sum = 0 var result = 0 for Pi in Ps { sum += Pi result += sum } print(result)
[Swift] ๋ฐฑ์ค€2178 ๋ฏธ๋กœํƒ์ƒ‰
ยท
๐Ÿ“ ์ฝ”ํ…Œ/BOJ
import Foundation /// 1: ์ด๋™๊ฐ€๋Šฅ, 0: ์ด๋™๋ถˆ๊ฐ€๋Šฅ /// (1, 1)์—์„œ (N, M)์˜ ์œ„์น˜๋กœ ์ด๋™ํ•˜๋Š” ์ตœ๋‹จ๊ฑฐ๋ฆฌ ๊ตฌํ•ด๋ผ /// dfs ์•Œ๊ณ ๋ฆฌ์ฆ˜ ํŠน์„ฑ ์ƒ ์ตœ๋‹จ๊ฑฐ๋ฆฌ๋ฅผ ์ฐพ์œผ๋ ค๋ฉด ์™„์ „ ํƒ์ƒ‰์„ ํ•˜๊ณ  ๊ฐ€์žฅ ์ž‘์€ ๊ฐ’์„ ์„ ํƒํ•ด์•ผ ํ•˜๋Š”๋ฐ /// ๊ฒฝ๋กœ๊ฐ€ ์•„์ฃผ ๋งŽ์„ ์ˆ˜๋„ ์žˆ์œผ๋ฏ€๋กœ ์‹œ๊ฐ„๋ณต์žก๋„๊ฐ€ ๋งค์šฐ ์ปค์ง„๋‹ค. /// ๊ทธ๋ž˜์„œ bfs๋กœ ํ’€์–ด์•ผํ•œ๋‹ค. let NM = readLine()!.components(separatedBy: " ").map { Int($0)! } let N = NM[0] let M = NM[1] let dx = [0, 0, -1, 1] let dy = [-1, 1, 0, 0] // ์ƒํ•˜์ขŒ์šฐ // 0๊ณผ 1์˜ ์ •๋ณด๊ฐ€ ๋‹ด๊ธด ๋ณด๋“œ var board = [[Int]]() // ๋ฐฉ๋ฌธํ•œ ์ขŒํ‘œ๋ฅผ ๋‹ด์„ ๋ฐฐ..
[Swift] ๋ฐฑ์ค€2606 ๋ฐ”์ด๋Ÿฌ์Šค
ยท
๐Ÿ“ ์ฝ”ํ…Œ/BOJ
import Foundation /// N : ์ปดํ“จํ„ฐ์˜ ์ˆ˜ (์ •์ ) /// M : ๋„คํŠธ์›Œํฌ ์ƒ์—์„œ ์ง์ ‘ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ๋Š” ์ปดํ“จํ„ฐ์Œ์˜ ์ˆ˜ (๊ฐ„์„ ) let N = Int(readLine()!)! let M = Int(readLine()!)! var graph = [String: [String]]() var cnt = 0 for i in 0..
[Swift] ์ˆœ์—ด, ์กฐํ•ฉ
ยท
๐Ÿ“ ์ฝ”ํ…Œ/๊ฟ€ํŒ
์ˆœ์—ด func permutation(array: [T], n: Int) { var visited = [Bool](repeating: false, count: array.count) func permutation(current: [T]) { if current.count == n { print(current) return } for i in 0..
[Swift] Array์˜ ์š”์†Œ๋ฅผ key, value๋ฅผ ๊ฐ–๋Š” Dictionary๋กœ ๋ณ€ํ™˜ํ•˜๊ธฐ
ยท
๐Ÿ“ ์ฝ”ํ…Œ/๊ฟ€ํŒ
let array = [1, 1, 2, 4, 4, 4, 5] ์ด๋Ÿฐ ๋ฐฐ์—ด์ด ์žˆ์„ ๋•Œ let dict = [1: 2, 2: 1, 4: 3, 5: 1] Array์˜ ์š”์†Œ๋ฅผ Dictionary๋กœ ๋ณ€ํ™˜ํ•˜๊ณ ์ž ํ•œ๋‹ค๋ฉด Dictionary์˜ ์ƒ์„ฑ์ž๋ฅผ ์ด์šฉํ•˜๋ฉด ์ข‹๋‹ค. let dictionary = Dictionary(array.map { ($0, 1) }, uniquingKeysWith: +) ์ด๋Ÿฐ์‹์œผ๋กœ ์‰ฝ๊ฒŒ Dictionary๋กœ ๋ณ€ํ™˜ํ•  ์ˆ˜ ์žˆ๋‹ค.
[Swift] ๋ฐฑ์ค€ 1927 ์ตœ์†Œ ํž™
ยท
๐Ÿ“ ์ฝ”ํ…Œ/BOJ
import Foundation struct Heap { private var elements = [T]() private let comparer: (T, T) -> Bool init(comparer: @escaping (T, T) -> Bool) { self.comparer = comparer } mutating func insert(element: T) { if elements.isEmpty { elements.append(element) elements.append(element) return } elements.append(element) // swim up swimUp(index: elements.count - 1) } mutating private func swimUp(index: Int) {..
[Swift] ๋ฐฑ์ค€ 1074 Z
ยท
๐Ÿ“ ์ฝ”ํ…Œ/BOJ
import Foundation let Nrc = readLine()!.components(separatedBy: " ").map { Int($0)! } let N = Nrc[0] let r = Nrc[1] let c = Nrc[2] var cnt = 0 // ํ•œ ๋ณ€์˜ ๊ธธ์ด let m = 2
[Swift] ๋ฐฑ์ค€2630 ๋‚˜๋Š”์•ผ ํฌ์ผ“๋ชฌ ๋งˆ์Šคํ„ฐ ์ด๋‹ค์†œ
ยท
๐Ÿ“ ์ฝ”ํ…Œ/BOJ
import Foundation let NM = readLine()!.components(separatedBy: " ").map { Int($0)! } let N = NM[0] let M = NM[1] var pokedex1 = [String: Int]() var pokedex2 = [Int: String]() for i in 0..
[๋ถ„ํ• ์ •๋ณต] 2์ฐจ์›๋ฐฐ์—ด์„ n์กฐ๊ฐ ๋‚ด๋Š” ๋ฌธ์ œ์œ ํ˜•
ยท
๐Ÿ“ ์ฝ”ํ…Œ/์œ ํ˜•์ •๋ฆฌ
2์ฐจ์› ๋ฐฐ์—ด์„ n์กฐ๊ฐ ๋‚ด๋Š” ๋ฌธ์ œ์œ ํ˜•์€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ˆœ์„œ๋กœ ํ‘ผ๋‹ค. 1. 2์ฐจ์› ๋ฐฐ์—ด์˜ ์™ผ์ชฝ ์œ„๋ฅผ ๊ธฐ์ค€์œผ๋กœ, x, y์ขŒํ‘œ์™€ 2์ฐจ์›๋ฐฐ์—ด์˜ ํฌ๊ธฐ n์„ ์ž…๋ ฅ๋ฐ›์•„ ๋ชจ๋“  ์›์†Œ๊ฐ€ ๋˜‘๊ฐ™์€์ง€ ์ฒดํฌํ•ด์ฃผ๋Š” ํ•จ์ˆ˜๋ฅผ ๋งŒ๋“ ๋‹ค. 2. n์กฐ๊ฐ ๋‚ด๋Š” ์žฌ๊ท€ํ•จ์ˆ˜๋ฅผ ๋งŒ๋“ ๋‹ค. - ๋ชจ๋“  ์›์†Œ๊ฐ€ ๋˜‘๊ฐ™์„ ๊ฒฝ์šฐ ๊ฐ’์„ ๋ฆฌํ„ดํ•˜๋Š” ์ข…๋ฃŒ์กฐ๊ฑด์„ ๋งŒ๋“ ๋‹ค. - ์ข…๋ฃŒ์กฐ๊ฑด์ด ์•„๋‹ ๊ฒฝ์šฐ, n์กฐ๊ฐ์œผ๋กœ ์ž๋ฅด๊ธฐ ์œ„ํ•ด ๊ฐ€์ค‘์น˜ w๋ฅผ ์„ค์ •ํ•œ๋‹ค. (w = N / n) - ์ด์ค‘ ๋ฐ˜๋ณต๋ฌธ์œผ๋กœ n์กฐ๊ฐ ๊ฐœ์ˆ˜๋งŒํผ ์žฌ๊ท€ํ•จ์ˆ˜๋ฅผ ํ˜ธ์ถœํ•œ๋‹ค. (ex : 4์กฐ๊ฐ -> (0..
JerryiOS