For Programmer
백준 2635번 파이썬 문제풀이(수 이어가기) 본문
728x90
간단한 구현 + 브루트 포스 문제이다. 코드는 다음과 같다.
firstN = int(input())
result = []
for second in range(1, 30000 + 1):
temp = [firstN, second] # temp 리스트에 첫번째 수와 2번째 수를 넣는다.
firstN_temp = firstN # 입력받은 값을 임시 변수에 저장
while True: # 반복문을 돈다.
third = firstN_temp - second # 3번째 이후값부터 저장
if third < 0: # 만약 그 값이 음수가 되면
break # 탈출
temp.append(third) # 3번째 이상의 값을 temp라는 임시 리스트에 넣는다.
firstN_temp = second # 두번째 값을 첫번째 값으로 바꿔주고
second = third # 세번째 값을 두번째 값으로 바꿔준다.
if len(result) < len(temp): # 만약 while문을 다돌고 나서 현재 저장된 result값보다 길이가 길다면
result = [] # 현재 저장된 값들을 지워주고
result += temp # 새로운 값을 저장해준다.
print(len(result))
print(*result)
728x90
'코팅테스트 > 백준 문제 모음' 카테고리의 다른 글
백준 2628번 파이썬 문제풀이(종이 자르기) (0) | 2022.01.26 |
---|---|
백준 1244번 파이썬 문제풀이(스위치 켜고 끄기) (0) | 2022.01.25 |
백준 2669번 파이썬 문제풀이(직사각형 네개의 합집합의 면적 구하기) (0) | 2022.01.25 |
백준 11866번 파이썬 문제풀이(요세푸스 문제 0) (0) | 2022.01.24 |
백준2615번 파이썬 문제풀이(오목) (0) | 2022.01.24 |
Comments