Skip to content

Commit c58457f

Browse files
committed
1 parent 0ec1c85 commit c58457f

File tree

1 file changed

+37
-0
lines changed

1 file changed

+37
-0
lines changed

Hongjoo/lv3/N으로표현.py

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
def solution(N, number):
2+
if N == number:
3+
return 1
4+
# 1. [ SET x 8 ] 초기화
5+
s = [ set() for x in range(8) ]
6+
7+
# 2. 각 set마다 기본 수 "N" * i 수 초기화
8+
for i,x in enumerate(s, start=1):
9+
x.add( int( str(N) * i ) )
10+
11+
# 3. n 일반화
12+
# {
13+
# "n" * i U
14+
# 1번 set 사칙연산 n-1번 set U
15+
# 2번 set 사칙연산 n-2번 set U
16+
# ...
17+
# n-1번 set 사칙연산 1번 set,
18+
# }
19+
# number를 가장 최소로 만드는 수 구함.
20+
for i in range(1, 8):
21+
for j in range(i):
22+
for op1 in s[j]:
23+
for op2 in s[i-j-1]:
24+
s[i].add(op1 + op2)
25+
s[i].add(op1 - op2)
26+
s[i].add(op1 * op2)
27+
if op2 != 0:
28+
s[i].add(op1 // op2)
29+
30+
if number in s[i]:
31+
answer = i + 1
32+
break
33+
34+
else:
35+
answer = -1
36+
37+
return answer

0 commit comments

Comments
 (0)