1. ๋ฌธ์
2. ์ ์ถ๋ ฅ
3. ์ ์ถ๋ ฅ ์์
4. ๋ฌธ์ ์ค๊ณ
- ๋ฌธ์ ์ ํฌ๊ธฐ๊ฐ 100,000 ์ด๋ฏ๋ก O(n^2)์ผ๋ก๋ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์์.
- ๋ฐ๋ผ์, ์ฝ์ ์ ๋ ฌ, ์ ํ ์ ๋ ฌ, ๋ฒ๋ธ ์ ๋ ฌ ๋ณด๋ค๋ ํฉ๋ณ์ ๋ ฌ, ํต ์ ๋ ฌ ๋ฑ์ผ๋ก ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์์
- ํ์ง๋ง ๋ด์ฅ ํจ์์ธ sort() ํน์ sorted()๊ฐ ์ ๋ ฌ ์๊ณ ๋ฆฌ์ฆ ์ค์๋ ๊ฐ์ฅ ๋น ๋ฅด๋ฏ๋ก ํด๋น ํจ์๋ฅผ ์ฌ์ฉํจ
- ์ ๋ ฅ ๋ฐ์ ์ ๋ ฌ์ sorted() ํจ์๋ก ์ ๋ ฌ ํ k = 1์ผ ๊ฒฝ์ฐ ์ ์ผ ํฐ ์์ ์ด๋ฏ๋ก ๊ฑฐ๊พธ๋ก ์ธ๋ฑ์ค๋ฅผ ์ ๊ทผ ํจ์ผ๋ก์จ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํจ
5. ์ ์ฒด ์ฝ๋
//
// main.swift
// Knumber
//
// Created by ์ด์์ฌ on 2022/02/28.
//MARK: - k๋ฒ์งธ ํฐ ์ ์ฐพ๊ธฐ
//MARK: - Framework
import Foundation
//MARK: - Function
func solution() -> Void {
//MARK: - input
guard let input = readLine()?.components(separatedBy: " ") else { return }
guard let inputArray = readLine()?.components(separatedBy: " ") else { return }
let N: Int = input.map { Int($0) }[0] ?? 0
let k: Int = input.map { Int($0) }[1] ?? 0
//MARK: - process
let sortedArray: Array<Int> = inputArray.map { Int($0) ?? 0 }.sorted { $0 < $1 }
let result: Int = sortedArray[N - k]
//MARK: - output
print(result)
}
solution()
์ ์ฒด์ฝ๋๋ ์ฌ๊ธฐ์์ ํ์ธํ ์ ์์ต๋๋ค.
'Swift Data Structure And Algorithm > Sort Algorithm' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋ฒ๋ธ์ ๋ ฌ(Bubble Sort) (0) | 2022.04.18 |
---|---|
์ฝ์ ์ ๋ ฌ(Insertion Sort) (0) | 2022.04.18 |
์ ํ์ ๋ ฌ(Selection Sort) (0) | 2022.04.18 |
ํต์ ๋ ฌ ๊ตฌํํ๊ธฐ (0) | 2022.03.31 |
ํฉ๋ณ์ ๋ ฌ ๊ตฌํํ๊ธฐ (0) | 2022.03.31 |