알고리즘 공부/파이썬(Python)

백준 2669번 직사각형 네개의 합집합의 면적 구하기 파이썬

마달랭 2024. 6. 26. 21:53
반응형

리뷰

색종이 문제와 비슷했다. 쉬운 문제

문제 풀이

  1. 좌표 값을 리스트로 받아 준다.
  2. 100 * 100 크기의 2차원 배열을 생성해 준다. 인덱스를 편하게 하기 위해 101 * 101로 생성해 주었다.
  3. 리스트 내 요소를 돌며 해당 좌표 내의 2차원 배열을 1로 변경해 준다.
  4. 2차원 배열 전체의 값을 더해준 뒤 출력

참고 사항

없음

정답 코드

def q2669():
    # 백준 2669번 직사각형 네개의 합집합의 면적 구하기 파이썬
    lst = [list(map(int, input().split())) for _ in range(4)]
    dp = [[0] * 101 for _ in range(101)]
    for a in lst:
        for i in range(a[0], a[2]):
            for j in range(a[1], a[3]):
                dp[i][j] = 1
    result = 0
    for i in dp:
        result += sum(i)
    print(result)
q2669()

 

728x90
반응형