본문 바로가기
백준 코딩테스트/9.수학 2

백준 2581) 소수 (c)

by xortl98 2020. 10. 15.
728x90
#include<stdio.h>
int main()
{
	int M = 0; //입력 받을 최소값
	int N = 0; //입력 받을 최대값 
	int decimal = 0;
	scanf_s("%d", &M);
	scanf_s("%d", &N);
	int min = N; //임의로 최댓값 대입 
	int i = 0;
	int j = 0;
	for (i = M; i <= N; i++)  
	{
		int check = 0;  //소수인지 아닐지 확인해줄 변수 
		if (i == 1) continue;  
		for (j = 2; j < i; j++)   
		{
			if (i % j == 0)  //소수가 아니면 check 1로 바꿔주고 break; 
			{
				check = 1;
				break;
			}
		}
		if (check == 0)  //만약 소수면 
		{
			decimal = decimal + i;
			if (min > i) min = i;
		}
	}
	if (decimal == 0) printf("-1");
	else
	{
		printf("%d\n", decimal);
		printf("%d\n", min);
	}
}

 

앞에 1978번 소수 찾기를 참고해서 풀어보니 잘 풀렸다.

1978번엔 3번 정도 틀렸는데 이번건 바로 성공해서 좋았다.