BOJ - 1235

주의·2024년 1월 19일
0

boj

목록 보기
101/214

백준 문제 링크
학생 번호

❓접근법

  1. 학생들의 번호를 담은 리스트 student를 만든다.
  2. 이제 가장 작은 자릿수부터 가능한지 알아볼건데,
    예제처럼
    오민식 1212345
    김형택 1212356
    이동호 0033445 이렇게 있을 때,
    한자리 [5,6,5] ,
    두자리 [[4,5][5,6][4,5]] ,
    세자리 [[3,4,5][3,5,6][4,4,5]] ...
    단 하나라도 같은 것이 있으면 그 자리수는 안되기 때문에, 가능한 가장 작은 자릿수는 세자리이다.
  3. 위 과정처럼 서로의 번호를 비교해서 모두 다 같지 않으면 그 번호를 출력하고 break를 해주면 끝

👌🏻코드

N = int(input())

student = []

for _ in range(N):
    student.append(list(map(int, (input()))))
    
n = len(student[0])

for i in range(n-1, -1, -1):
    isTrue = True
    for j in range(N):
        for k in range(j+1, N):
            if student[j][i:] == student[k][i:]:
                isTrue = False
                break
                
    if isTrue == True:
        print(len(student[0]) - i)
        break

0개의 댓글