코드

 

#include <stdio.h>

int prime(int x)
{
	int p = 0;
	if(x%2 == 1 && x != 1)
	{
		for(int k = 1; 2*k+1 < x; k++)
		{
			if(x%(2*k+1)==0)
			p++;
		}
		if(p == 0)
		{
		return 1;
		}
        else
        {
            return 0;
        }
	}
	else if(x == 2)
	{
		return 1;
	}
	else
	{
		return 0;
	}
}

int main(void)
{
	int a, x;
	int sum = 0;
	scanf("%d", &a);
	for(int i = 0; i < a; i++)
	{
		scanf("%d", &x);
		if(prime(x))
		{
			sum++;
		}
	}
	printf("%d", sum);
	return 0;
}

문제

 

주어진 수 N개 중에서 소수가 몇 개인지 찾아서 출력하는 프로그램을 작성하시오.

 

입력

 

첫 줄에 수의 개수 N이 주어진다. N은 100이하이다. 다음으로 N개의 수가 주어지는데 수는 1,000 이하의 자연수이다.

 

출력

 

주어진 수들 중 소수의 개수를 출력한다.

 

예제 입력 1

 

4 1 3 5 7

 

예제 출력 1

 

3

 

문제 - https://www.acmicpc.net/problem/1978

Posted by hsoo3844

코드

 

#include <stdio.h>

int main(void)
{
	int a, b, cnt = 0;
	scanf("%d%d", &a, &b);
	for(int i = 1; i < a + 1; i++)
	{
		int c = i;
		while(c)
		{
		 		if(c % 10 == b)
		 		{
		 			cnt += 1;
				}
				c /= 10; 
		}
	}
	printf("%d", cnt);
	return 0;
}

 

문제

 

1부터 n까지 차례대로 써 내려갈 때 특정 숫자(digit)의 빈도수를 구하여 출력하는 프로그램을 작성하시오.

예를 들어, n = 11 이고 숫자 1의 빈도수를 구하라고 하면, 1 2 3 4 5 6 7 8 9 10 11 에서 숫자 1은 1에서 한 번, 10에서 한 번, 11에서 두 번 나타나므로 1의 빈도수는 총 4 이다.

 

입력

 

자연수 n (1 ≤ n ≤ 100,000)과 한 자리 숫자 d(0~9)가 첫째 줄에 주어진다.

 

출력

 

첫째 줄에 빈도수를 출력한다.

 

예제 입력 1

 

11 1

 

예제 출력 1

 

4

 

문제 - https://www.acmicpc.net/problem/14912

Posted by hsoo3844

코드

 

#include <stdio.h>

int main(void)
{
	int a, b;
	int max;
	int min;
	scanf("%d", &a);
	for(int i = 0; i < a; i++)
	{
		scanf("%d", &b);
		if(i == 00)
		{
			max = b;
			min = b;
		}
		if(max < b)
		{
		max = b;
		}
		if(min > b)
		{
		min = b;
		}
	}
	printf("%d %d", min, max);
	return 0;
}

 

 

문제

 

N개의 정수가 주어진다. 이때, 최솟값과 최댓값을 구하는 프로그램을 작성하시오.

 

입력

 

첫째 줄에 정수의 개수 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 N개의 정수를 공백으로 구분해서 주어진다. 모든 정수는 -1,000,000보다 크거나 같고, 1,000,000보다 작거나 같은 정수이다.

 

출력

 

첫째 줄에 주어진 정수 N개의 최솟값과 최댓값을 공백으로 구분해 출력한다.

 

예제 입력 1

 

5 20 10 35 30 7

 

예제 출력 1

 

7 35

 

문제 - https://www.acmicpc.net/problem/10818

Posted by hsoo3844

코드

#include <stdio.h>

int main(void)
{
    int a, i, n;
    int zero = 0;
    int one = 0;
    scanf("%d", &n);
    for(i = 0; i < n; i++)
        {
        scanf("%d", &a);
        if(a == 0)
            {
            zero++;
            }
        else
            {
            one++;
            }
        }
    if(one > zero)
        {
        printf("Junhee is cute!");
        }
    else
        {
        printf("Junhee is not cute!");
        }
    return 0;
}

 

문제

 

준희는 자기가 팀에서 귀여움을 담당하고 있다고 생각한다. 하지만 연수가 볼 때 그 의견은 뭔가 좀 잘못된 것 같았다. 그렇기에 설문조사를 하여 준희가 귀여운지 아닌지 알아보기로 했다.

 

입력

 

첫 번째 줄에 설문조사를 한 사람의 수 N (1 ≤ N ≤ 101, N은 홀수)가 주어진다.

다음 N개의 줄에는 각 줄마다 각 사람이 설문 조사에 어떤 의견을 표명했는지를 나타내는 정수가 주어진다. 0은 준희가 귀엽지 않다고 했다는 뜻이고, 1은 준희가 귀엽다고 했다는 뜻이다.

 

출력

 

준희가 귀엽지 않다는 의견이 더 많을 경우 "Junhee is not cute!"를 출력하고 귀엽다는 의견이 많을 경우 "Junhee is cute!"를 출력하라.

 

예제 입력 1

 

3 1 0 0

 

예제 출력 1

 

Junhee is not cute!

 

문제 - https://www.acmicpc.net/problem/10886

Posted by hsoo3844
이전버튼 1 2 3 이전버튼