티스토리 뷰

 

이번 문제는 2차원 배열에서 가장 큰수와 작은 수를 찾는 개념으로 해결할 수 있는 문제이다.

 

문제에서 하나 주의할 점은 가장 큰 점과 작은 점을 찾기 위해 비교연산을 하게되고 이때 사용되는 값을 초기화하는 과정에서 제공된 점 중 하나로 초기화해야한다.

왜냐하니, 모든 점의 위치가 (1, 1)보다 큰 위치라면 비교 변수들이 0으로 초기화된다면 최소점을 찾을 수 없기 때문이다.

 

using System;

public class Solution {
    public int solution(int[,] dots) {
        int minX = dots[0,0];
        int minY = dots[0,1];
        int maxX = dots[0,0];
        int maxY = dots[0,1];
        
        for (int k = 0; k < dots.GetLength(0); k++) {
            if (dots[k,0] < minX) minX = dots[k,0];
            if (dots[k,1] < minY) minY = dots[k,1];
            if (dots[k,0] > maxX) maxX = dots[k,0];
            if (dots[k,1] > maxY) maxY = dots[k,1];
        }
        
        return (maxX - minX) * (maxY - minY);
    }
}

 

최근에 올라온 글
최근에 달린 댓글
«   2025/06   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
글 보관함