본문 바로가기
파이썬알고리즘

[토스 NEXT] 2022년 코딩테스트 기출문제 파이썬 풀이

by zho 2024. 9. 24.

Toss Next 챌린지 2024가 열리게 되어서 기출문제를 찾아보았다 그중 가장 쉬운 문제인듯하다

문제명 : 멋쟁이 숫자

숫자로만 이루어진 문자열 s가 있습니다. (0 <=  s.length < 1,000) 아래의 조건을 모두 만족하는 숫자를 '멋쟁이 숫자'라고 합니다.

[조건] 1. 길이가 3인 s의 substring을 10진수로 읽은 숫자이다. 2. 각 자리의 숫자가 모두 같다.

구현사항

문자열s를 입력받아 멋쟁이 숫자를 리턴하는 함수를 만들어주세요.

  • 만약, 멋쟁이 숫자가 여러 개 존재하는 경우에는 가장 큰 수를 리턴합니다.
  • 만약, 가장 큰 멋쟁이 숫자가 000이라면 0을 리턴합니다.
  • 만약, 멋쟁이 숫자가 존재하지 않다면 -1을 리턴합니다.

예시 문제

예시 1

  • 입력: s = “12223”
  • 출력: 222

예시 2

  • 입력: s = “111999333”
  • 출력: 999
  • 설명: 111, 333, 999 3가지가 존재하고 999가 제일 크므로 999를 리턴합니다.

예시 3

  • 입력: s = “123”
  • 출력: -1

 

 

풀이

## 멋쟁이 숫자
n = "123"
lengn = len(n)
nice = []
for i in range(0, lengn - 2):
    if n[i] == n[i + 1] == n[i + 2]:
        tmp = n[i]
        nice.append(tmp*3)

if len(nice) == 0:
    print(-1)
else:
    print(max(nice))

 

 

728x90