#include <stdio.h>
int main()
{
int Min, Max; // 입력받을 최소 최대 값 변수
scanf("%d %d", &Min, &Max);
int sum = 0; // 소수의 합계
int arr[Max - Min + 1]; // 소수를 저장할 배열 선언
for (int i = 0; i < Max - Min + 1; i++) //배열을 0으로 초기화
arr[i] = 0;
for (int i = Min; i < Max + 1; i++)
{
int flag; //소수 판별 변수
if (i == 1) // 1은 소수x
{
continue;
}
else if (i == 2) // 2는 소수
{
flag = 1;
}
else // 1과 2가 아닐 때
{
for (int j = 2; j < i; j++)
{
flag = 0; //소수 판별 변수 초기화
if (i % j == 0) //변수 i가 j로 나누었을때 나머지가 0이면 소수 x
{
break;
}
flag = 1; //소수일 경우 소수 판별 변수는 1
}
}
if (flag == 1)
{
sum += i;
//printf("i: %d\n", i);
arr[i - Min] = i;
//printf("arr[%d]: %d\n", i - Min, i);
}
}
for (int i = 0; i < Max - Min + 1; i++)
{
//printf("arr[%d]: %d\n", i, arr[i]);
//printf("arr[%d]: %d\n", i, arr[i]);
if (arr[i] != 0) //배열에 0이 아닌 수가 있을 경우를 검색
{
printf("%d\n%d", sum, arr[i]); //제일 처음 0이 아닌 수가 나왔을 경우
// 출력 후 프로그램 종료
return 0;
}
}
printf("-1"); // 소수가 없을 경우 -1 출력 후 종료
return 0;
}