백준_2669번

정소담·2023년 1월 31일
0

BOJ Short Review

목록 보기
24/44
post-thumbnail

2669번 직사각형 네개의 합집합의 면적 구하기

주어지는 네개의 직사각형의 총 면적을 구하는 문제.
직사각형끼리 겹쳐지는 부분도 있어 이차원리스트를 활용했다.

lst = [[0]*100 for i in range(100)] # x좌표,y좌표 각각 [0] 100줄의 리스트
cnt = 0 # 면적 카운트 하기
for i in range(4): # 네개의 직사각형 좌표
    a,b,c,d = list(map(int,input().split())) # x1,y1,x2,y2 좌표
    for x in range(a,c): # 가로좌표
        for y in range(b,d): # 세로좌표
            lst[x][y] = 1 # 해당 좌의 0을 1로 변경
for i in lst: # 100*100의 리스트를 순환하면서
    cnt += i.count(1) # 1을 카운트 해준 값을 누적
print(cnt) # 총 면적 출력.

[[0이 100개인 리스트]*100줄] 인 이차원 리스트를 활용하여 해결했다.
중복되는 면적도 걸러낼 수 있었다.

profile
Hi ! I'm newbie :)

0개의 댓글