반응형
[ 문제 ]
난이도: D2
문제 번호: 1974
N개의 정점과 M개의 간선으로 구성된 가중치가 없는 무방향 그래프에서의 최장 경로의 길이를 계산하자.
정점의 번호는 1번부터 N번까지 순서대로 부여되어 있다.
경로에는 같은 정점의 번호가 2번 이상 등장할 수 없으며,
경로 상의 인접한 점들 사이에는 반드시 두 정점을 연결하는 간선이 존재해야 한다.
경로의 길이는 경로 상에 등장하는 정점의 개수를 나타낸다.
[ 코드 ]
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
|
for tc in range(1, int(input())+1):
sudoku = [list(map(int, input().split())) for _ in range(9)]
lis = []
for j in range(9):
cnt = [0] * 10
for k in range(9):
cnt[sudoku[j][k]] += 1
lis.append(cnt)
for j in range(9):
cnt = [0] * 10
for k in range(9):
cnt[sudoku[k][j]] += 1
lis.append(cnt)
for a in range(0, 9, 3):
for b in range(0, 9, 3):
cnt = [0] * 10
for c in range(3):
for d in range(3):
cnt[sudoku[b + c][a + d]] += 1
lis.append(cnt)
result = 1
for l in range(27):
for k in range(1, 10):
if lis[l][k] != 1:
result = 0
print('#{} {}'.format(tc, result))
|
cs |
반응형
'SW Expert' 카테고리의 다른 글
[SWEA] 1979 어디에 단어가 들어갈 수 있을까 Python (0) | 2021.05.25 |
---|---|
[SWEA] 1976 시각 덧셈 Python (0) | 2021.05.24 |
[SWEA] 1970 쉬운 거스름돈 Python (0) | 2021.05.23 |
[SWEA] 1966 숫자를 정렬하자 Python (0) | 2021.05.22 |
[SWEA] 1961 숫자 배열 회전 Python (0) | 2021.05.21 |