반응형
소수 판별 함수 isprime()을 만들어주고 소수면 최소값 초기화, sum에 값을 더해준다. 최소값이 10000으로 변화 없으면 소수가 없다는 뜻이므로 -1을 반환해주고 그 외에는 sum, min을 차례대로 출력해준다.
#include <iostream>
using namespace std;
int isprime(int x){
if(x == 1) return 0;
if(x == 2) return 1;
for(int i = 2; i < x; i++)
if(x % i == 0)
return 0;
return 1;
}
int main(){
int M, N, sum = 0, min = 10000;
cin >> M >> N;
for(int i = M; i <= N; i++){
if(isprime(i)){
sum += i;
if(i < min)
min = i;
}
}
if(min == 10000)
cout << -1 << endl;
else{
cout << sum << endl << min << endl;
}
return 0;
}
반응형
'알고리즘 문제풀이 > 추천 문제' 카테고리의 다른 글
[ 백준 1935 ] 후위 표기식2 (C++) (0) | 2022.01.17 |
---|---|
[ 백준 14888 ] 연산자 끼워넣기 (C++) (0) | 2022.01.17 |
[ 백준 1292 ] 쉽게 푸는 문제 (C++) (0) | 2022.01.17 |
[ 백준 1978 ] 소수 찾기 (C++) (0) | 2022.01.17 |
[ 백준 2693 ] N번째 큰 수 (C++) (0) | 2022.01.17 |