728x90
반응형
문제
세준이는 1부터 N까지 모든 수를 차례대로 공백없이 한 줄에 다 썼다. 그리고 나서, 세준이가 저녁을 먹으러 나간 사이에 다솜이는 세준이가 쓴 수에서 마음에 드는 몇 개의 숫자를 지웠다.
세준이는 저녁을 먹으러 갔다 와서, 자기가 쓴 수의 일부가 지워져있는 모습을 보고 충격받았다.
세준이는 수를 방금 전과 똑같이 쓰려고 한다. 하지만, N이 기억이 나지 않는다.
남은 수를 이어 붙인 수가 주어질 때, N의 최솟값을 구하는 프로그램을 작성하시오. 아무것도 지우지 않을 수도 있다.)
내 생각
문제를 제대로 해석하지 못해서 낭패 본 케이스 ! 잇츠 미 !
1부터 N까지 모든 수를 차 례 대 로 !!!!!! 공백없이 한 줄에 다 썼다. 차례대로.. 그러고 N의 최솟값을 구하는 프로그램 : 브루트포스
N = 1234일 때, 1234가 차례대로 이므로 출력값은 4이다.
N = 1111111일 때, 1/10/11/12/13 에 1이 6개 들어간다. 그 다음으로 14니까 출력값은 14이다.
1. N을 입력받기
2. (반복) 숫자를 차례대로 늘려가며 N과 비교하기 (처음 숫자가 같다면 제거 해야 함 → 슬라이스를 이용하여 다음문자부터 다시 저장)
3. (종료 조건) 문자가 남아있지 않으면 종료
내 코드
import sys
N = sys.stdin.readline().strip()
num = 0
while len(N):
num += 1
numbers = str(num)
while len(numbers) and len(N):
if numbers[0] == N[0]:
N = N[1:]
numbers = numbers[1:]
print(num)
728x90
반응형
'Algorithm > 코딩테스트 (Python)' 카테고리의 다른 글
[백준][1138번] 한 줄로 서기 (1) | 2024.01.09 |
---|---|
[백준][9655번] 돌 게임 (1) | 2024.01.08 |
[백준][22233번] 가희와 키워드 (1) | 2024.01.02 |
[백준][4659번] 비밀번호 발음하기 (0) | 2023.12.28 |
[백준][10431번] 줄세우기 (1) | 2023.12.26 |
댓글