Programming/백준
[1일 1백준 : 2581번] 소수
HyeunJae
2021. 3. 8. 19:21
#include <iostream>
bool IsPrime(int Number)
{
if (Number < 2)
return false;
for (int i = 2; i < Number; i++)
{
if (Number % i == 0)
return false;
}
return true;
}
void FindPrimeNumber(int M, int N)
{
int smallest = 2147483647;
int sum = 0;
for (int i = M; i <= N; i++)
{
if (!IsPrime(i))
continue;
if (smallest > i)
smallest = i;
sum += i;
}
if (sum == 0)
{
std::cout << "-1" << "\n";
return;
}
std::cout << sum << "\n";
std::cout << smallest << "\n";
}
int main(void)
{
std::cin.tie(NULL);
std::cout.tie(NULL);
std::cout.sync_with_stdio(false);
int M, N;
std::cin >> M;
std::cin >> N;
FindPrimeNumber(M, N);
return 0;
}
2581번: 소수
M이상 N이하의 자연수 중 소수인 것을 모두 찾아 첫째 줄에 그 합을, 둘째 줄에 그 중 최솟값을 출력한다. 단, M이상 N이하의 자연수 중 소수가 없을 경우는 첫째 줄에 -1을 출력한다.
www.acmicpc.net