# 02/Swift - CTP
[Swift] 백준! 2981번 - 검문
장딴지연
2023. 1. 16. 18:49
반응형
https://www.acmicpc.net/problem/2981
2981번: 검문
트럭을 타고 이동하던 상근이는 경찰의 검문을 받게 되었다. 경찰은 상근이가 운반하던 화물을 하나하나 모두 확인할 것이기 때문에, 검문하는데 엄청나게 오랜 시간이 걸린다. 상근이는 시간
www.acmicpc.net
import Foundation
func gcd(_ a: Int, _ b: Int) -> Int{
if (b == 0) { return a }
return gcd(b, a % b)
}
let n = Int(readLine()!)!
var l:[Int] = []
var minv = 1000000000
for _ in 1...n {
let num = Int(readLine()!)!
l.append(num)
if num < minv {
minv = num
}
}
var str = ""
var v = l[0]-minv
for i in 1...l.count-1 {
if l[i] > minv {
v = gcd(v, l[i]-minv)
}
}
if v > 3 {
for i in 2...v/2 {
if v%i == 0 {
if str == "" {
str += "\(i)"
} else {
str += " \(i)"
}
}
}
}
if str == "" {
str += "\(v)"
} else {
str += " \(v)"
}
print(str)
반응형