백준 문제 풀이
백준 2529 파이썬 python : 부등호 @@황소처럼 우직하게@@ 아직 멍청이다
hjp845
2020. 3. 7. 11:27
반응형
아직 난 멍청이다
N과 M 그렇게 풀어놓고
이걸 생각하지 못하다니
재귀에서 for 1~10 돌리면
모든 케이스 체크 가능하다.
중복 안되려면 check 배열 만들어서 T F 해주면된다
레바스님의 풀이이다.
n = int(input())
op = input().split()
c = [False] * 10
mx, mn = "", ""
def possible(i, j, k):
if k == '<':
return i < j
if k == '>':
return i > j
return True
def solve(cnt, s):
global mx, mn
if cnt == n + 1:
if not len(mn):
mn = s
else:
mx = s
return
for i in range(10):
if not c[i]:
if cnt == 0 or possible(s[-1], str(i), op[cnt - 1]):
c[i] = True
solve(cnt + 1, s + str(i))
c[i] = False
solve(0, "")
print(mx)
print(mn)
반응형