Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
Tags
- 백준
- 404에러
- 2중포문
- 코테
- 최빈값
- 그리디
- 소트인사이드
- 덩치
- 스프링프레임워크
- 동적계획법
- 월간 코드 챌린지 시즌2
- 코딩테스트
- 프로그래머스
- DFS
- sort
- 최단거리
- 스프링
- 백트래킹
- 동적
- 그리디알고리즘
- 통계학
- 소트
- 파이썬
- 스택
- Python
- 브루트포스
- 정렬
- 퇴각검색
- Backtracking
- 다익스트라
Archives
- Today
- Total
취준생의 코딩테스트 연습기
[SWEA] 4836 [파이썬 S/W 문제해결 기본] 2일차 - 색칠하기 / 파이썬(python) 본문
※ SW Expert 아카데미의 문제를 무단 복제하는 것을 금지합니다.
# 문제 링크
# Soultion
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
t = int(input())
for tc in range(1,t+1):
r_li = set() # set은 add를 이용해 추가가능
b_li = set()
n = int(input())
for _ in range(n):
li = list(map(int,input().split()))
if li[-1]==1: # red
for x in range(li[0],li[2]+1):
for y in range(li[1],li[3]+1):
r_li.add((x,y))
else:
for x in range(li[0],li[2]+1):
for y in range(li[1],li[3]+1):
b_li.add((x,y))
paint = len(r_li) - len(r_li - b_li)
print("#"+str(tc),paint)
|
cs |
4. 5. list를 이용하려다가 set()을 사용하여 중복이 제거되도록 하였다.
9. 영역이 빨간색이면, r_li에 각 좌표들을 넣음
10. 11. 2중 포문을 이용하여 색칠된 모든 x, y 좌표를 구하여 리스트에 추가
13. 영역이 파란색이면, b_li에 각 좌표들을 넣음
14. 15. 위와 같은 방법으로 파란색인 부분의 x, y좌표 넣기
18. 10x10격자의 파란색과 빨간색인 부분의 좌표들을 모두 구했으므로, 겹치는 좌표의 개수를 구한다.
'코딩테스트 > SWEA' 카테고리의 다른 글
[SWEA] 4839 [파이썬 S/W 문제해결 기본] 2일차 - 이진탐색 / 파이썬(python) (0) | 2021.03.28 |
---|---|
[SWEA] 4837 [파이썬 S/W 문제해결 기본] 2일차 - 부분집합의 합 / 파이썬(python) (0) | 2021.03.27 |
[SWEA] 4834 [파이썬 S/W 문제해결 기본] 1일차 - 숫자 카드 / 파이썬(python) (0) | 2021.03.22 |
[SWEA] 4835 [파이썬 S/W 문제해결 기본] 1일차 - 구간합/ 파이썬(python) (0) | 2021.03.22 |
[SWEA] 4831 [파이썬 S/W 문제해결 기본] 1일차 - 전기버스 / 파이썬(python) (0) | 2021.03.22 |
Comments