문제 링크

14681번: 사분면 고르기 (acmicpc.net)

 

14681번: 사분면 고르기

점 (x, y)의 사분면 번호(1, 2, 3, 4 중 하나)를 출력한다.

www.acmicpc.net


문제

흔한 수학 문제 중 하나는 주어진 점이 어느 사분면에 속하는지 알아내는 것이다. 사분면은 아래 그림처럼 1부터 4까지 번호를 갖는다. "Quadrant n"은 "제n사분면"이라는 뜻이다.

예를 들어, 좌표가 (12, 5)인 점 A는 x좌표와 y좌표가 모두 양수이므로 제1사분면에 속한다. 점 B는 x좌표가 음수이고 y좌표가 양수이므로 제2사분면에 속한다.

점의 좌표를 입력받아 그 점이 어느 사분면에 속하는지 알아내는 프로그램을 작성하시오. 단, x좌표와 y좌표는 모두 양수나 음수라고 가정한다.


입력

첫 줄에는 정수 x가 주어진다. (−1000 ≤ x ≤ 1000; x ≠ 0) 다음 줄에는 정수 y가 주어진다. (−1000 ≤ y ≤ 1000; y ≠ 0)


출력

점 (x, y)의 사분면 번호(1, 2, 3, 4 중 하나)를 출력한다.


 


소스 코드

#include <iostream>

int main(void)
{
    int x, y;
    scanf("%d%d", &x, &y);

    if (x>0 && y>0)
        printf("1");

    if (x < 0 && y > 0)
        printf("2");

    if (x < 0 && y < 0)
        printf("3");

    if (x > 0 && y < 0)
        printf("4");
    return 0;
}

'코딩 > 코딩(코딩 문제, 알고리즘 등등)' 카테고리의 다른 글

백준 2577(숫자의 개수)  (0) 2022.01.25
백준 15700(타일 채우기 4)  (0) 2022.01.25
백준 14681(사분면 고르기)  (0) 2022.01.25
백준 1008(A/B)  (0) 2021.09.08
백준 21756(지우개)  (0) 2021.09.08
백준 10998(A×B)  (0) 2021.09.08

문제 링크

1008번: A/B (acmicpc.net)

 

1008번: A/B

두 정수 A와 B를 입력받은 다음, A/B를 출력하는 프로그램을 작성하시오.

www.acmicpc.net


문제

두 정수 A와 B를 입력받은 다음, A/B를 출력하는 프로그램을 작성하시오.


입력

첫째 줄에 A와 B가 주어진다. (0 < A, B < 10)


출력

첫째 줄에 A/B를 출력한다. 실제 정답과 출력값의 절대오차 또는 상대오차가 10-9 이하이면 정답이다.


예제 입력 1                                                                                                  예제 출력 1

     1 3                                                                                       0.33333333333333333333333333333333

10-9 이하의 오차를 허용한다는 말은 꼭 소수 9번째 자리까지만 출력하라는 뜻이 아니다.


예제 입력 2                                                                                                  예제 출력 2

     4 5                                                                                                              0.8

 


소스 코드

#include <stdio.h>

int main()
{
	int a, b;
	scanf("%d %d", &a, &b);
	printf("%.9lf", (double)a / b);
	return 0;
}

문제 링크

21756번: 지우개 (acmicpc.net)

 

21756번: 지우개

$N$개의 칸에 $1$ 부터 $N$ 까지의 수들이 왼쪽부터 순서대로 저장되어 있다. 또, 각 칸은 왼쪽부터 $1$ 부터 $N$까지 순서대로 번호가 붙어 있다. 즉, 처음에는 각 칸의 번호와 각 칸에 저장된 수가

www.acmicpc.net


문제

 N개의 칸에 1부터 N까지의 수들이 왼쪽부터 순서대로 저장되어 있다. 또, 각 칸은 왼쪽부터 1부터 N까지 순서대로 번호가 붙어 있다. 즉, 처음에는 각 칸의 번호와 각 칸에 저장된 수가 같다.

아래 그림은 N=7일 때의 예이다.

다음 작업을 수가 정확히 하나가 남을 때 까지 반복한다.

(A) 홀수번 칸의 수들을 모두 지운다 (B) 남은 수들을 왼쪽으로 모은다.

제일 첫 작업의 (A) 단계가 끝나면 칸들의 상태는 다음과 같을 것이다.

(B) 단계가 끝나면 다음과 같을 것이다.

두번째 작업이 진행되면 칸들은 아래 두 그림과 같이 바뀔 것이다.

이제 수가 하나 남았으므로 작업은 더 이상 진행되지 않는다.

 N을 입력으로 받아 위와 같이 작업을 진행했을 때 마지막으로 남는 수를 계산하는 프로그램을 작성하라.


입력

첫 번째 줄에 정수 N이 주어진다.


출력

마지막으로 남는 수를 한 줄에 출력한다.


제한


서브태스크

번호 배점 제한
1 5 입출력 예제만이 주어짐
2 15 N <= 8
3 30 N은  1,2,4,8,16,32,64 중 하나이다. 즉, N은 1이거나, 2이거나, 2를 여러 번 곱한 수 중 하나이다.
4 50 추가 제약 조건 없음

예제 입력 1                                                                                                  예제 출력 1

     1                                                                                                                1


예제 입력 2                                                                                                  예제 출력 2

     2                                                                                                               2


예제 입력 3                                                                                                  예제 출력 3

     5                                                                                                               4


소스 코드

#include <stdio.h>

int a[200], b[200];
int main()
{
	int n, i, j;
	scanf("%d", &n);
	for (i = 0; i < n; i++) //a배열에 1부터 n까지의 숫자로 채운다.
	{
		a[i] = i + 1;
	}

	// n = a 배열의 크기
	while(n > 1)
	{
		// 만약 i / 2를 했을 때 나머지가 1이라면 홀수이므로 b[j]번째에 a[i]번쨰 값을 넣는다.
		// n = a 배열의 크기
		// i = 배열 a의 현재 탐색 위치 (탐색)
		// j = 배열 b의 현재 저장 위치 (저장)
		j = 0;
		for (i = 0; i < n; i++)
		{
			if (i % 2 == 1)
			{
				b[j] = a[i];
				j++;
			}
		}

		// 해야할 일 : b 배열의 값을 a배열에 전부 복사한다.
		// i = b배열의 현재 탐색 위치
		// j = b배열의 크기
		for (i = 0; i < j; i++)
		{
			a[i] = b[i];
		}
		n = j;
	}
	
	for (int i = 0; i < n; i++) //a배열 값을 출력한다.
	{
		printf("%d ", a[i]);
	}
	printf("\n");
	return 0;
}

'코딩 > 코딩(코딩 문제, 알고리즘 등등)' 카테고리의 다른 글

백준 14681(사분면 고르기)  (0) 2022.01.25
백준 사이트에 제가 만든 문제가 올라왔습니다.  (1) 2021.12.01
백준 1008(A/B)  (0) 2021.09.08
백준 10998(A×B)  (0) 2021.09.08
백준 10172(개)  (0) 2021.09.08
백준 10171(고양이)  (0) 2021.09.08

문제 링크

10998번: A×B (acmicpc.net)

 

10998번: A×B

두 정수 A와 B를 입력받은 다음, A×B를 출력하는 프로그램을 작성하시오.

www.acmicpc.net


문제

두 정수 A와 B를 입력받은 다음, A×B를 출력하는 프로그램을 작성하시오.


입력

첫째 줄에 A와 B가 주어진다. (0 < A, B < 10)


출력

첫째 줄에 A×B를 출력한다.


예제 입력 1                                                                                            예제 출력 1

     1 2                                                                                                         2

예제 입력 1                                                                                            예제 출력 1

     3 4                                                                                                         12


소스 코드

#include <stdio.h>

int main()
{
	int a, b;
	scanf("%d %d", &a, &b);
	printf("%d", a * b);
}

'코딩 > 코딩(코딩 문제, 알고리즘 등등)' 카테고리의 다른 글

백준 사이트에 제가 만든 문제가 올라왔습니다.  (1) 2021.12.01
백준 1008(A/B)  (0) 2021.09.08
백준 21756(지우개)  (0) 2021.09.08
백준 10172(개)  (0) 2021.09.08
백준 10171(고양이)  (0) 2021.09.08
백준 10718(We love kriii)  (0) 2021.09.08

문제 링크

10172번: 개 (acmicpc.net)

 

10172번: 개

문제 아래 예제와 같이 개를 출력하시오. 입력 출력 예제 입력 1 복사 예제 출력 1 복사 |\_/| |q p| /} ( 0 )"""\ |"^"` | ||_/=\\__|...

www.acmicpc.net


문제

아래 예제와 같이 개를 출력하시오.


입력

없음.


출력

개를 출력한다.


예제 입력 1                                                                                                                   예제 출력 1

                                                                                                                     

예제 출력 1

 


소스 코드

#include <iostream>

int main(void)
{
    printf("|\\_/|\n");
    printf("|q p|   /}\n");
    printf("( 0 )\"\"\"\\\n");
    printf("|\"^\"`    |\n");
    printf("||_/=\\\\__|\n");

    return  0;
}

'코딩 > 코딩(코딩 문제, 알고리즘 등등)' 카테고리의 다른 글

백준 1008(A/B)  (0) 2021.09.08
백준 21756(지우개)  (0) 2021.09.08
백준 10998(A×B)  (0) 2021.09.08
백준 10171(고양이)  (0) 2021.09.08
백준 10718(We love kriii)  (0) 2021.09.08
백준 2557(Hello World)  (0) 2021.09.08

+ Recent posts