๋ค ๋ฒ์งธ ์ (3009๋ฒ)
Bronze 3
#๊ตฌํ #๊ธฐํํ
https://www.acmicpc.net/problem/3009
๋ฌธ์ ๋ด์ฉ
๋ฌธ์ ์ ๊ทผ
3๊ฐ์ ์ ์ ์ขํ๊ฐ ์ฃผ์ด์ง ๋, ์ถ์ ํํํ ์ง์ฌ๊ฐํ์ ๋ง๋ค๊ธฐ ์ํด ํ์ํ ๋ค ๋ฒ์งธ ์ ์ ์ถ๋ ฅํด์ผ ํ๋ค.
๋ค๋ฅด๊ฒ ๋งํ๋ฉด, ์ ๋ณ์ด ํํํ ์ง์ฌ๊ฐํ์ ๋ง๋ค๊ธฐ ์ํด ํ์ํ ๋ค ๋ฒ์งธ ์ ์ ๊ตฌํด์ผ ํ๋ค.
์ ๋ ฅ ์์ ๋ค์ ๋ณด๋ค ๋ณด๋ฉด ์ฝ๊ฒ ๊ท์น์ ์ฐพ์ ์ ์๋ค.
์ ๋ ฅ ์์ 1์ ๋ค์๊ณผ ๊ฐ๋ค.
5 5
5 7
7 5
// ์ ๋ต: 7 7
์์ ์ ๋ ฅ 2
30 20
10 10
10 20
// ์ ๋ต: 30 10
์ 2๊ฐ์ ์ ๋ ฅ ์์ ์ ์ ๋ต์ ๋ณด๋ฉด ์ธ ์ขํ์์ 1๊ฐ์ฉ ๋ค์ด ์๋ ์ขํ๊ฐ์ด ์ ๋ต์ด ๋๋ ๊ฒ์ ๋ณผ ์ ์๋ค.
์ ๋ณ์ด ํํํ ์ ์ฌ๊ฐํ์ ๋ง๋ค๊ธฐ ์ํด์๋ ํ ์ขํ์ x์ถ๊ณผ ํํํ ์ขํ, y์ถ์ผ๋ก ํํํ ์ขํ 1๊ฐ์ฉ์ด ํ์ํ๋ค.
๊ทธ๋ ๊ธฐ ๋๋ฌธ์ ์ ๋ณ์ด ํํํ ์ ์ฌ๊ฐํ์ ๋ง๋ค๊ธฐ ์ํด ์ x, y์ขํ ์๊ฐ ๋์ผํ ๊ฐ 2๊ฐ์ฉ์ผ๋ก ์ด๋ฃจ์ด์ ธ์ผ ํ๋ค.
๊ทธ๋์ ๊ฒฐ๋ก ์ ์ ๋ ฅ๋ฐ์ ์ขํ์ ์ ์ค์ 3๊ฐ์ x, y์ขํ๋ค ์ค ์ ์ผํ๊ฒ ๋ค๋ฅธ x, y๊ฐ์ ๊ตฌํ๋ฉด ๋๋ค.
๋ฌธ์ ํด๊ฒฐ ์ฝ๋
import java.io.BufferedReader
import java.io.InputStreamReader
fun main() = with(BufferedReader(InputStreamReader(System.`in`))) {
val pointsX = mutableMapOf<Int, Int>()
val pointsY = mutableMapOf<Int, Int>()
for (i in 1 .. 3) {
val point = readLine().split(" ").map { it.toInt() }
if (!pointsX.containsKey(point[0])) pointsX[point[0]] = 1
else pointsX[point[0]] = pointsX[point[0]]!! + 1
if (!pointsY.containsKey(point[1])) pointsY[point[1]] = 1
else pointsY[point[1]] = pointsY[point[1]]!! + 1
}
println("${pointsX.filter { it.value == 1 }.keys.first()} ${pointsY.filter { it.value == 1 }.keys.first()}")
}
๋ฌธ์ ํ์ด
x, y์ ๊ฐ์ ๊ฐ์๋ฅผ ์ธ๊ธฐ ์ํด map์ ์ด์ฉํด ์ฃผ์๋ค. key๋ฅผ ๊ฐ์ผ๋ก, value๋ฅผ ๊ฐ์๋ก.
map์ ๊ฐ์ ์ ์ฅํ๊ณ ๋์, map์์ value๊ฐ์ด 1์ธ key๋ฅผ ์ถ๋ ฅํ๋ฉด ๋.
๋ฌธ์ ํด๊ฒฐ ๊ณผ์
์ฌ์์.
๊ท์น ์ฐพ๊ธฐ๋ ์ฝ๊ณ , ํธ๋ ๋ฐฉ๋ฒ๋ ์ฝ๋ค.
'๐ฏ | ๋ฐฑ์ค > ๐ | Bronze' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Kotlin] ๋ฐฑ์ค 10987๋ฒ ๋ชจ์์ ๊ฐ์ (0) | 2024.09.04 |
---|---|
[Kotlin, B3] ๋ฐฑ์ค 15894๋ฒ ์ํ์ ์ฒด์ก๊ณผ๋ชฉ์ ๋๋ค (0) | 2024.09.03 |
[Kotlin, B1] ๋ฐฑ์ค 20632๋ฒ ์ ๋๋์ ํด์ฆ์ผ (0) | 2024.08.28 |
[Kotlin, B1] ๋ฐฑ์ค 15629๋ฒ Africa (0) | 2024.08.22 |
[Kotlin, B1] ๋ฐฑ์ค 1952๋ฒ ๋ฌํฝ์ด2 (0) | 2024.08.14 |