티스토리 뷰
문제
3052번: 나머지
문제 두 자연수 A와 B가 있을 때, A%B는 A를 B로 나눈 나머지 이다. 예를 들어, 7, 14, 27, 38을 3으로 나눈 나머지는 1, 2, 0, 2이다. 수 10개를 입력받은 뒤, 이를 42로 나눈 나머지를 구한다. 그 다음 서로 다른 값이 몇 개 있는지 출력하는 프로그램을 작성하시오. 입력 첫째 줄부터 열번째 줄 까지 숫자가 한 줄에 하나씩 주어진다. 이 숫자는 1,000보다 작거나 같고, 음이 아닌 정수이다. 출력 첫째 줄에, 42로 나누었
www.acmicpc.net
풀이
package main
import (
"bufio"
"fmt"
"os"
)
func main() {
reader := bufio.NewReader(os.Stdin)
var numbers = make([]int, 10)
var mods []int
for i := range numbers {
fmt.Fscanf(reader, "%d\n", &numbers[i])
var mod = numbers[i] % 42
if !contains(mods, mod) {
mods = append(mods, mod)
}
}
fmt.Println(len(mods))
}
func contains(numbers []int, number int) bool {
for _, n := range numbers {
if number == n {
return true
}
}
return false
}
728x90
'dev > algorithm' 카테고리의 다른 글
BOJ / 8958번 / OX퀴즈 [Golang] (0) | 2020.04.14 |
---|---|
BOJ / 1546번 / 평균 [Golang] (2) | 2020.04.13 |
BOJ / 2577번 / 숫자의 개수 [Golang] (0) | 2020.04.11 |
BOJ / 2562번 / 최댓값 [Golang] (0) | 2020.04.10 |
BOJ / 10818번 / 최소, 최대 [Golang] (5) | 2020.04.09 |
댓글