diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000..30fe538 Binary files /dev/null and b/.DS_Store differ diff --git a/Baekjoon/.DS_Store b/Baekjoon/.DS_Store new file mode 100644 index 0000000..2c9d54c Binary files /dev/null and b/Baekjoon/.DS_Store differ diff --git a/Baekjoon/Silver2/.DS_Store b/Baekjoon/Silver2/.DS_Store new file mode 100644 index 0000000..cef764f Binary files /dev/null and b/Baekjoon/Silver2/.DS_Store differ diff --git "a/Baekjoon/Silver2/2529/\353\260\225\354\244\200\352\267\234.py" "b/Baekjoon/Silver2/2529/\353\260\225\354\244\200\352\267\234.py" new file mode 100644 index 0000000..091c742 --- /dev/null +++ "b/Baekjoon/Silver2/2529/\353\260\225\354\244\200\352\267\234.py" @@ -0,0 +1,32 @@ +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 + +# 어차피 크기 순서대로 dfs를 돌기 때문에 상관이 없음 +def solve(cnt, s): + global mx, mn + if cnt == n + 1: + print(mn, mx) + if not len(mn): + mn = s + else: + mx = s + return + for i in range(10): + if not c[i]: + if cnt == 0 or possible(int(s[-1]), i , op[cnt - 1]): + c[i] = True + solve(cnt + 1, s + str(i)) + c[i] = False + + +solve(0, "") +print(mx) +print(mn) \ No newline at end of file