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 |
Tags
- swift
- 그래프탐색
- 스택
- 그리디알고리즘
- 큐
- programmers
- 프로그래머스
- 브루트포스 알고리즘
- 누적 합
- 코딩테스트
- 깊이우선탐색
- Mac
- BOJ
- 정렬
- 백준
- 파이썬
- 백준알고리즘
- 알고리즘
- 그래프이론
- 자료구조
- Xcode
- 해시를사용한집합과맵
- 너비우선탐색
- 문자열
- 두 포인터
- 트리를사용한집합과맵
- 다이나믹프로그래밍
- 구현
- Python
- python3
Archives
- Today
- Total
Coding Cantabile
[BOJ] #2563_색종이(파이썬, Python3) 본문
본 게시글은 백준 저지 알고리즘 문제를 '파이썬, Python3' 언어로 풀이한 내용을 주관적으로 정리하였으며, 내용과 관련된 코드리뷰 및 피드백 환영합니다.
티어
Silver V
문제
가로, 세로의 크기가 각각 100인 정사각형 모양의 흰색 도화지가 있다.
이 도화지 위에 가로, 세로의 크기가 각각 10인 정사각형 모양의 검은색 색종이를 색종이의 변과 도화지의 변이 평행하도록 붙인다.
이러한 방식으로 색종이를 한 장 또는 여러 장 붙인 후 색종이가 붙은 검은 영역의 넓이를 구하는 프로그램을 작성하시오.

예를 들어 흰색 도화지 위에 세 장의 검은색 색종이를 그림과 같은 모양으로 붙였다면 검은색 영역의 넓이는 260이 된다.
입력
첫째 줄에 색종이의 수가 주어진다. 이어 둘째 줄부터 한 줄에 하나씩 색종이를 붙인 위치가 주어진다.
색종이를 붙인 위치는 두 개의 자연수로 주어지는데
첫 번째 자연수는 색종이의 왼쪽 변과 도화지의 왼쪽 변 사이의 거리이고,
두 번째 자연수는 색종이의 아래쪽 변과 도화지의 아래쪽 변 사이의 거리이다.
색종이의 수는 100 이하이며, 색종이가 도화지 밖으로 나가는 경우는 없다
출력
첫째 줄에 색종이가 붙은 검은 영역의 넓이를 출력한다.
예제 입력 및 출력 1
3
3 7
15 7
5 2
260
풀이
import sys
input = sys.stdin.readline
N = int(input())
arr = [[0 for _ in range(101)] for _ in range(101)]
for _ in range(N):
a, b = map(int, input().split())
for i in range(a, a + 10):
for j in range(b, b + 10):
arr[i][j] = 1
count = 0
for row in arr:
count += row.count(1)
print(count)
2차원 배열을 이용해서 0으로 도배해둔 다음, 가로와 세로만큼의 for문을 돌려 해당 배열에 1을 넣어서 그 한 칸이 넓이가 되어 계산하면 된다. 그리고 count(1)을 통해 1을 계산해주면 된다.

'Coding Test > BOJ' 카테고리의 다른 글
| [BOJ] #11004_K번째 수(파이썬, Python3) (0) | 2022.11.10 |
|---|---|
| [BOJ] #1010_다리 놓기(파이썬, Python3) (0) | 2022.11.09 |
| [BOJ] #18258_큐 2(파이썬, Python3) (0) | 2022.11.01 |
| [BOJ] #1874_스택 수열(파이썬, Python3) (0) | 2022.10.31 |
| [BOJ] #2164_카드2(파이썬, Python3) (0) | 2022.10.29 |