본문 바로가기

Algorithm/Implementation

(C++) - 백준(BOJ) 9063 : 대지

반응형

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

 

9063번: 대지

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

www.acmicpc.net

간단한 대소비교 문제였습니다.

📕 풀이방법

📔 입력 및 초기화

점 개수 n, 각 좌표의 최대 최소를 저장할 변수들을 선언 후 입력해줍니다. 

📔 풀이과정

for loop를 수행하며 n개의 점을 입력해줍니다. 이 때마다 각 좌표의 최소, 최대를 저장해줍니다.

직사각형의 넓이 = (x좌표의 최대 - 최소) * (y좌표의 최대 - 최소) 가 됩니다.

📔 정답출력

직사각형의 넓이를 출력해줍니다.


📕 Code

#include <bits/stdc++.h>
#define MAX 0x3f3f3f3f
#define ll long long
using namespace std;
ll n, minX = MAX, maxX = -MAX, minY = MAX, maxY = -MAX;
int main(){
    cin >> n;
    for(ll i = 0, x, y; i < n; i++){
        cin >> x >> y;
        minX = min(x, minX);
        maxX = max(x, maxX);
        minY = min(y, minY);
        maxY = max(y, maxY);
    }
    cout << (maxX - minX) * (maxY - minY);
}

'Algorithm > Implementation' 카테고리의 다른 글

(C++) - 백준(BOJ) 8725 : Szachy  (0) 2022.02.16
(C++) - 백준(BOJ) 9286 : Gradabase  (0) 2022.02.15
(C++) - 백준(BOJ) 8716 : Pole  (0) 2022.02.10
(C++) - 백준(BOJ) 1408 : 24  (0) 2022.02.09
(C++) - 백준(BOJ) 8932 : 7종 경기  (1) 2022.02.07