[Programmers] N으로 표현*****
def solution(N, number):
S = []
for i in range(1,9):
S.append(int(str(N)*i))
result = [{} for _ in range(10)]
result[1] = {S[0]}
if N == number:
return 1
for j in range(2,9):
result[j] = {S[j-1]}
for a in range(j):
for x in result[a]:
for y in result[j-a]:
result[j].add(x+y)
result[j].add(x-y)
result[j].add(x*y)
if y != 0:
result[j].add(x//y)
if number in result[j]:
return j
return -1
힌트를 썼다. 어렵다.
x/y
를 추가하는 것과 x//y
를 추가하는 것에 큰 시간 차이가 있었다. number
는 자연수로 주어주기에 x//y 를 추가하지 않아도 괜찮았다.
Author And Source
이 문제에 관하여([Programmers] N으로 표현*****), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@jujube0/Programmers-N으로-표현저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)