티스토리 뷰
https://www.acmicpc.net/problem/14500
14500번: 테트로미노
폴리오미노란 크기가 1×1인 정사각형을 여러 개 이어서 붙인 도형이며, 다음과 같은 조건을 만족해야 한다. 정사각형은 서로 겹치면 안 된다. 도형은 모두 연결되어 있어야 한다. 정사각형의 변
www.acmicpc.net
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
32
33
34
35
36
37
38
39
|
shapes = (((0, 0), (1, 0), (2, 0), ((3, 0), (0, -1), (0, 1), (1, -1), (1, 1), (2, -1), (2, 1))),
((0, 0), (0, 1), (0, 2), ((0, 3), (-1, 0), (1, 0), (-1, 1), (1, 1), (-1, 2), (1, 2))),
((0, 0), (0, 1), (1, 0), (1, 1)),
((0, 0), (1, 0), (1, 1), (2, 1)),
((0, 1), (1, 0), (1, 1), (2, 0)),
((0, 0), (0, 1), (1, 1), (1, 2)),
((1, 0), (0, 1), (1, 1), (0, 2)))
n, m = map(int, input().split())
graph = [list(map(int, input().split())) for _ in range(n)]
answer = 0
def get_sum(y, x, li):
summation = 0
for l in li:
summation += graph[y + l[0]][x + l[1]]
return summation
for i in range(n):
for j in range(m):
for a in range(2):
for b in range(7):
try:
val = get_sum(i, j, shapes[a][:3] + shapes[a][3][b:b + 1])
if answer < val:
answer = val
except IndexError:
pass
for a in range(2, 7):
try:
val = get_sum(i, j, shapes[a])
if answer < val:
answer = val
except IndexError:
pass
print(answer)
|
cs |
도형 뒤집고, 돌린거 하나 하나 다 구현해서 브루트포스로 돌렸다. 화가 난다.
원래 인덱스 검사하는거 직접 짜는 편인데, 화나서 그냥 try except로 돌리고 ㅋㅋ
마지막으로, 충격적인건
같은 코드인데, 위는 PyPy3, 아래는 Python3이다.
PyPy가 빠른건 알았는데, 확실히 빠르다.
근데 메모리는 시간이 빠른 대신 엄청나게 잡아먹는다.
근데 테트로미노가 아니라 테트리미노 아니었나? 흐음..
'algorithm'''problem solve' 카테고리의 다른 글
[백준] 15650 - N과 M (2) (백트래킹, 조합, combinations) (0) | 2020.10.23 |
---|---|
[백준] 16236 - 아기 상어 (구현, BFS, 삼성) (0) | 2020.10.23 |
[백준] 10026 - 적록색약(BFS) (0) | 2020.10.22 |
[백준] 9019 - DSLR (BFS, PyPy) (0) | 2020.10.21 |
[백준] 1107 - 리모컨 (브루트포스) (0) | 2020.10.21 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 알고리즘
- c
- 한화큐셀
- webOS
- 피보나치
- DP
- BFS
- 이분탐색
- 오픈소스
- Dynamic Programming
- 카카오
- 완전탐색
- BaekJoon
- LG
- 인공지능
- PyPy3
- 플로이드 와셜
- 백트래킹
- c++
- 정렬
- DFS
- 코딩
- 구현
- 백준
- 컨트리뷰톤
- 1932
- 프로그래머스
- 파이썬
- 동적 계획법
- 브루트포스
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함