[백준] 1235번 학생 번호

거북이·2023년 1월 17일
0

백준[실버4]

목록 보기
70/91
post-thumbnail

💡문제접근

  • 앞에서부터 줄여나가면서 학생 번호가 전부 구분이 가능하다면 리스트에 길이를 저장하는 방식으로 코드를 작성했는데 계속 WA를 받았다.
  • 학생 번호의 문자 길이는 모두 동일하다고 했으므로 이중 반복문과 슬라이싱을 이용해서 구분 가능하다면 리스트에 저장하고 구분 가능하지 않다면 break를 실행시키고 리스트에 들어있는 원소의 개수가 학생 번호 개수와 동일하다면 모든 학생들의 학생 번호를 서로 다르게 만들 수 있는 최소의 k를 출력한다.

💡코드(메모리 : 30748KB, 시간 : 84ms)

N = int(input())
li = []
for _ in range(N):
    li.append(input())

temp = len(li[0])
for i in range(1, temp+1):
    results = []
    for j in range(N):
        temp = li[j][-i:]
        if temp not in results:
            results.append(temp)
        else:
            break
    if len(results) == N:
        print(i)
        break

💡소요시간 : 34m

0개의 댓글