반응형
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
- 백준 피아노체조
- 1987파이썬
- 피아노체조 파이썬
- 백준 등수매기기
- 백준 점프 파이썬
- MongoDB
- 백준
- 백준 전쟁 파이썬
- express
- 파이썬 평범한배낭
- CRUD
- 등수매기기 파이썬
- 소프티어 장애물인식프로그램
- 소프티어 지도자동구축
- 지도자동구축 파이썬
- 파이썬데이터분석라이브러리
- 백준알파벳파이썬
- 도커 컨테이너
- 프로그래머스
- express mongodb
- jenkins
- 장애물인식프로그램 파이썬
- 백준 A->B
- 금고털이 파이썬
- 백준 평범한배낭
- MySQL완전삭제
- 백준 바이러스
- 백준 전쟁-전투
- 백준 점프
- 백준 예산
Archives
- Today
- Total
바위 뚫는중
[BOJ] 백준 2563. 색종이 - 구현 본문
반응형
색종이
시간 제한 메모리 제한 제출 정답 맞힌 사람 정답 비율
1 초 | 128 MB | 49061 | 32169 | 27342 | 65.891% |
문제
가로, 세로의 크기가 각각 100인 정사각형 모양의 흰색 도화지가 있다. 이 도화지 위에 가로, 세로의 크기가 각각 10인 정사각형 모양의 검은색 색종이를 색종이의 변과 도화지의 변이 평행하도록 붙인다. 이러한 방식으로 색종이를 한 장 또는 여러 장 붙인 후 색종이가 붙은 검은 영역의 넓이를 구하는 프로그램을 작성하시오.
예를 들어 흰색 도화지 위에 세 장의 검은색 색종이를 그림과 같은 모양으로 붙였다면 검은색 영역의 넓이는 260이 된다.
입력
첫째 줄에 색종이의 수가 주어진다. 이어 둘째 줄부터 한 줄에 하나씩 색종이를 붙인 위치가 주어진다. 색종이를 붙인 위치는 두 개의 자연수로 주어지는데 첫 번째 자연수는 색종이의 왼쪽 변과 도화지의 왼쪽 변 사이의 거리이고, 두 번째 자연수는 색종이의 아래쪽 변과 도화지의 아래쪽 변 사이의 거리이다. 색종이의 수는 100 이하이며, 색종이가 도화지 밖으로 나가는 경우는 없다
출력
첫째 줄에 색종이가 붙은 검은 영역의 넓이를 출력한다.
예제 입력 1
3
3 7
15 7
5 2
예제 출력 1
260
🖊️ 풀이
별별 생각을 다해봤다!
맨 처음 생각은 다 더해서 겹친것만 빼는 것이 었는데, 효율이 너무 구렸다,,ㅎ
그러나 매우 간단하고 직관적인 방법이 있었다.
문제에 답이 있다.. 100까지 모두 0으로 채우고, 입력받은 색종이는 1로 채우고 1로 채워진 것만 카운트 해주면 된다. 여러번 겹치는 부분은 2나 3이 될테니 자연스레 스킵이 되는 원리이다!
paper = [[0]*101 for i in range(101)]
n = int(input())
for _ in range(n):
x, y = map(int, input().split())
for i in range(10):
for j in range(10):
paper[x+i][y+j] = 1
r = 0
for i in paper:
r += i.count(1)
print(r)
이리 간단한 문제에서 또 좋은 아이디어를 얻어간다.. idea!!
반응형
'Algorithms > 백준' 카테고리의 다른 글
[BOJ] 백준 2583. 영역 구하기 - BFS (0) | 2023.10.20 |
---|---|
[BOJ] 백준 1244. 스위치 켜고 끄기 - 시뮬레이션 (1) | 2023.10.14 |
[BOJ] 백준 1074. Z - 분할정복, 재귀 (0) | 2023.10.11 |
[BOJ] 백준 1003. 피보나치 함수 - DP, 실버3 (0) | 2023.10.06 |
[BOJ] 백준 11724. 연결 요소의 개수 - BFS/DFS (0) | 2023.10.03 |