백준문제풀이 9단계 약수,배수와 소수(5) 2581번 소수 (C#)
2024. 6. 23. 20:00ㆍ백준 문제풀이/9단계 약수,배수와 소수
자연수의 범위 M N을 받고
M ~ N사이에 소수들의 합과 최소값을 출력하는 문제
소수가 없다면 -1을 출력하자!
using System;
class BackJoon
{
static void Main(string[] args)
{
int M = int.Parse(Console.ReadLine());
int N = int.Parse(Console.ReadLine());
int count = 0;
int minV = int.MaxValue;
for (int i = M; i <= N; i++)
{
if (IsPrime(i))
{
count += i;
if (i < minV)
minV = i;
}
}
if (count == 0)
Console.WriteLine(-1);
else
{
Console.WriteLine(count);
Console.WriteLine(minV);
}
}
static bool IsPrime(int number)
{
if (number < 2)
return false;
if (number == 2)
return true;
if (number % 2 == 0)
return false;
for (int i = 3; i <= Math.Sqrt(number); i += 2)
{
if (number % i == 0)
return false;
}
return true;
}
}
저번 문제에서 썼던 IsPrime함수를 재사용 하자!
먼저 for문을 M부터 N까지 돌리면서 i가 소수인지 확인.
소수면 count에 누적더하기.
그리고 그 i가 minV(최소값)보다 작으면 minV에 넣어주자.
minV는 선언할때 int.MaxValue로 초기화해서 최대값을 넣어주었다.
for문이 끝나고,
count가 0이라면 -1을 출력해주고
아니라면 count와 minV를 출력해주자.
M = 60 N = 100 일때
'백준 문제풀이 > 9단계 약수,배수와 소수' 카테고리의 다른 글
백준문제풀이 9단계 약수,배수와 소수(6) 11653번 소인수분해 (C#) (0) | 2024.06.24 |
---|---|
백준문제풀이 9단계 약수,배수와 소수(4) 1978번 소수 찾기 (C#) (0) | 2024.06.22 |
백준문제풀이 9단계 약수,배수와 소수(3) 9506번 약수들의 합 (C#) (0) | 2024.06.21 |
백준문제풀이 9단계 약수,배수와 소수(2) 2501번 약수 구하기 (C#) (0) | 2024.06.20 |
백준문제풀이 9단계 약수,배수와 소수(1) 5086번 배수와 약수 (C#) (0) | 2024.06.19 |