요구능력 : 소수가 뭔지 아느냐, 배열을 쓸줄 아느냐
코드설명 :
1978번을 풀었다면 간단히 풀릴건데, 안풀었다면 풀고오시는걸 추천드립니다.(https://sapjilkingios.tistory.com/40)
allPrimeNumber 변수는 소수가 하나라도 있는지 판별하기 위해 사용했다.
하나도 없으면 -1을 출력해야되기 때문에..
그리고 소수라면 배열에 추가해서 합과 최소값을 구해주었다.
이외의 1978번과 다른점은 많이 없는듯 하다.
후기 : 이전 1978번에서 배열쓰는 요소를 넣은것 같은데, 이건 실버5티어네..
let M = Int(readLine()!)!
let N = Int(readLine()!)!
var sum = 0
var isPrimeNumber = true
var allPrimeNumber = false
var arr: [Int] = []
for i in M...N {
if i == 1 {
isPrimeNumber = false
}else {
for j in 2..<i {
if i % j == 0 {
isPrimeNumber = false
}
}
if isPrimeNumber == true {
arr.append(i)
allPrimeNumber = true
}
}
isPrimeNumber = true
}
if allPrimeNumber {
for k in 0..<arr.count {
sum += arr[k]
}
print("\(sum)")
print("\(arr.min()!)")
}else {
print("-1")
}
'Algorithm > 문제풀이_백준' 카테고리의 다른 글
Swift) 백준 1929번 (소수구하기) (0) | 2021.08.08 |
---|---|
Swift) 백준 11653번 (소인수분해) (0) | 2021.08.07 |
Swift) 백준 1978번 (소수) (0) | 2021.08.06 |
Swift) 백준 2839번 (설탕 배달) (0) | 2021.08.06 |
Swift) 백준 2775번 (부녀회장이 될테야) (0) | 2021.08.06 |
댓글