[C] 백준 9063번 대지

2023. 3. 21. 17:37C언어/문제풀이

728x90

https://www.acmicpc.net/problem/9063

 

9063번: 대지

첫째 줄에는 점의 개수 N (1 ≤ N ≤ 100,000) 이 주어진다. 이어지는 N 줄에는 각 점의 좌표가 두 개의 정수로 한 줄에 하나씩 주어진다. 각각의 좌표는 -10,000 이상 10,000 이하의 정수이다. 

www.acmicpc.net

문제는 간단하다.

x축의 최댓값에서 최솟값을 빼고, y축의 최댓값에서 최솟값을 빼주고난 후 두 값을 곱해 주면 원하는 결과가 나온다.

코드

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <stdio.h>
 
int main()
{
    int n, x, y;;
    scanf("%d"&n);
    int maxx = -10000, minx = 10000// 각 좌표의 범위 끝 값
    int maxy = -10000, miny = 10000// x, y의 최대, 최소 값을 위해 두 개 선언
    for (int i = 0; i < n; i++)
    {
        scanf("%d %d"&x, &y);
        if (x >= maxx) maxx = x;
        if (x < minx) minx = x;
        if (y >= maxy) maxy = y;
        if (y < miny) miny = y;
    }
    printf("%d", (maxx - minx) * (maxy - miny));
 
    return 0;
}
cs

 

728x90