https://www.acmicpc.net/problem/2866
import sys
input = sys.stdin.readline
R, C = map(int, input().split(" "))
li = list()
for _ in range(R):
li.append(input().strip())
yul = list()
# 열을 기준으로 새로운 리스트 생성
for i in range(C):
new_S = ''
for j in range(R):
new_S = new_S + li[j][i]
yul.append(new_S)
length = C
dap = 0
# 각 열에서 첫줄에 해당하는 글자를 지우고
# Set에 저장해서 중복 문자열 제거
# 개수 세서 처음과 같으면 중단, 아니면 count +1
while length > 0:
set_yul = set()
for i in yul:
set_yul.add(i[1:])
if len(set_yul) != C:
break
else:
yul = list(set_yul)
dap += 1
print(dap)'코딩테스트 > 코딩테스트 문제풀이' 카테고리의 다른 글
| [Python] 백준 <16929-Two Dots> (0) | 2025.07.11 |
|---|---|
| [Python] 백준 <11053-가장 긴 증가하는 부분 수열> (0) | 2025.07.11 |
| [Python] 백준 <12904-A와 B> (0) | 2025.07.10 |
| [Python] 백준 <9205-맥주 마시면서 걸어가기> (0) | 2025.07.08 |
| [Python] 백준 <1339-단어 수학> (0) | 2025.07.08 |