dev/algorithm
BOJ / 2309๋ฒ / ์ผ๊ณฑ ๋์์ด [Go][Python3]
crscnt
2021. 1. 15. 21:00
๐ฉ๐ป๐ป ๋ฌธ์
2309๋ฒ: ์ผ๊ณฑ ๋์์ด
์ํ ๊ฐ์ ์ค์ ๊ฑธ์ณ ๋์์ด๋ค์ ํค๊ฐ ์ฃผ์ด์ง๋ค. ์ฃผ์ด์ง๋ ํค๋ 100์ ๋์ง ์๋ ์์ฐ์์ด๋ฉฐ, ์ํ ๋์์ด์ ํค๋ ๋ชจ๋ ๋ค๋ฅด๋ฉฐ, ๊ฐ๋ฅํ ์ ๋ต์ด ์ฌ๋ฌ ๊ฐ์ง์ธ ๊ฒฝ์ฐ์๋ ์๋ฌด๊ฑฐ๋ ์ถ๋ ฅํ๋ค.
www.acmicpc.net
โ๐ป ํ์ด
๐จ Go
// https://www.acmicpc.net/problem/2309
package main
import (
"bufio"
"fmt"
"os"
"sort"
)
func main() {
reader := bufio.NewReader(os.Stdin)
writer := bufio.NewWriter(os.Stdout)
defer writer.Flush()
heights := []int{}
var sum int
for i := 0; i < 9; i++ {
var h int
fmt.Fscanln(reader, &h)
heights = append(heights, h)
sum += h
}
sort.Ints(heights)
for i := 0; i < 8; i++ {
for j := i + 1; j < 9; j++ {
if heights[i]+heights[j] == sum-100 {
for k := 0; k < 9; k++ {
if k != i && k != j {
fmt.Fprintln(writer, heights[k])
}
}
return
}
}
}
}
๐จ Python3
# https://www.acmicpc.net/problem/2309
import sys
if __name__ == "__main__":
heights = []
total = 0
for i in range(0, 9):
h = int(sys.stdin.readline())
heights.append(h)
total += h
heights.sort()
stop = False
for i in range(0, 8):
for j in range(i+1, 9):
if heights[i]+heights[j] == total-100:
for k in range(0, 9):
if k != i and k != j:
print(heights[k])
stop = True
break
if stop:
break
728x90