From 8a16d1af3a7f9af4bf4e449f8246941a6b55d61e Mon Sep 17 00:00:00 2001 From: yenru0 Date: Sat, 8 Aug 2020 17:41:32 +0900 Subject: [PATCH] =?UTF-8?q?=EB=B0=B1=ED=8A=B8=EB=9E=98=ED=82=B9=20?= =?UTF-8?q?=EC=82=AC=EA=B3=A8=2015649-15657?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- zeta_python/15649_backtracking.py | 0 zeta_python/completed/15649_backtracking.py | 10 ++++++++++ zeta_python/completed/15650.py | 11 +++++++++++ zeta_python/completed/15651.py | 11 +++++++++++ zeta_python/completed/15652.py | 12 ++++++++++++ zeta_python/completed/15654.py | 10 ++++++++++ zeta_python/completed/15655.py | 13 +++++++++++++ zeta_python/completed/15656.py | 13 +++++++++++++ zeta_python/completed/15657.py | 13 +++++++++++++ 9 files changed, 93 insertions(+) delete mode 100644 zeta_python/15649_backtracking.py create mode 100644 zeta_python/completed/15649_backtracking.py create mode 100644 zeta_python/completed/15650.py create mode 100644 zeta_python/completed/15651.py create mode 100644 zeta_python/completed/15652.py create mode 100644 zeta_python/completed/15654.py create mode 100644 zeta_python/completed/15655.py create mode 100644 zeta_python/completed/15656.py create mode 100644 zeta_python/completed/15657.py diff --git a/zeta_python/15649_backtracking.py b/zeta_python/15649_backtracking.py deleted file mode 100644 index e69de29..0000000 diff --git a/zeta_python/completed/15649_backtracking.py b/zeta_python/completed/15649_backtracking.py new file mode 100644 index 0000000..ab02994 --- /dev/null +++ b/zeta_python/completed/15649_backtracking.py @@ -0,0 +1,10 @@ +N, M = map(int, input().split()) +trace = [(list(range(1, N + 1)), M, [])] + +while trace: + n, m, d = trace.pop() + for i in range(len(n) - 1, -1, -1): + trace.append((n[:i] + n[i + 1:], m - 1, d + [n[i]])) + if m == 0: + print(" ".join(map(str, d))) +# 아마도 백트래킹일거임 아마도 그럼 ㅇㅇ diff --git a/zeta_python/completed/15650.py b/zeta_python/completed/15650.py new file mode 100644 index 0000000..a1ecf59 --- /dev/null +++ b/zeta_python/completed/15650.py @@ -0,0 +1,11 @@ +N, M = map(int, input().split()) +trace = [([i], M, i) for i in range(N, 0, -1)] # prev, depth, now + +while trace: + p, d, n = trace.pop() + for i in range(N, n, -1): + trace.append((p + [i], d-1, i)) + + if d == 1: + print(" ".join(map(str, p))) +# 아마도 백트래킹일거임 아마도 그럼 ㅇㅇ diff --git a/zeta_python/completed/15651.py b/zeta_python/completed/15651.py new file mode 100644 index 0000000..c2ec52a --- /dev/null +++ b/zeta_python/completed/15651.py @@ -0,0 +1,11 @@ +N, M = map(int, input().split()) +trace = [([i], M) for i in range(N, 0, -1)] # prev, depth + +while trace: + p, d = trace.pop() + if d == 1: + print(" ".join(map(str, p))) + continue + for i in range(N, 0, -1): + trace.append((p + [i], d-1)) +# 킹트래킹 diff --git a/zeta_python/completed/15652.py b/zeta_python/completed/15652.py new file mode 100644 index 0000000..f954007 --- /dev/null +++ b/zeta_python/completed/15652.py @@ -0,0 +1,12 @@ +N, M = map(int, input().split()) +trace = [([i], M, i) for i in range(N, 0, -1)] # prev, depth, now + +while trace: + p, d, n = trace.pop() + if d == 1: + print(" ".join(map(str, p))) + continue + for i in range(N, n-1, -1): + trace.append((p + [i], d-1, i)) + +# 코드 재사용 팝트래킹 diff --git a/zeta_python/completed/15654.py b/zeta_python/completed/15654.py new file mode 100644 index 0000000..452af12 --- /dev/null +++ b/zeta_python/completed/15654.py @@ -0,0 +1,10 @@ +N, M = map(int, input().split()) +trace = [(sorted(list(map(int, input().split()))), M, [])] + +while trace: + n, m, d = trace.pop() + for i in range(len(n) - 1, -1, -1): + trace.append((n[:i] + n[i + 1:], m - 1, d + [n[i]])) + if m == 0: + print(" ".join(map(str, d))) +# 아마도 백트래킹일거임 아마도 그럼 ㅇㅇ diff --git a/zeta_python/completed/15655.py b/zeta_python/completed/15655.py new file mode 100644 index 0000000..5e4007e --- /dev/null +++ b/zeta_python/completed/15655.py @@ -0,0 +1,13 @@ +N, M = map(int, input().split()) +K = list(map(int, input().split()));K.sort() +trace = [([v], M, i) for i, v in reversed(list(enumerate(K)))] # prev, depth, now + +while trace: + p, d, n = trace.pop() + if d == 1: + print(" ".join(map(str, p))) + continue + for i in range(N-1, n, -1): + trace.append((p + [K[i]], d-1, i)) + +# 아마도 백트래킹일거임 아마도 그럼 ㅇㅇ diff --git a/zeta_python/completed/15656.py b/zeta_python/completed/15656.py new file mode 100644 index 0000000..3a3329d --- /dev/null +++ b/zeta_python/completed/15656.py @@ -0,0 +1,13 @@ +N, M = map(int, input().split()) +K = list(map(int, input().split()));K.sort() +trace = [([v], M, i) for i, v in reversed(list(enumerate(K)))] # prev, depth, now + +while trace: + p, d, n = trace.pop() + if d == 1: + print(" ".join(map(str, p))) + continue + for i in range(N-1, -1, -1): + trace.append((p + [K[i]], d-1, i)) + +# 아마도 백트래킹일거임 아마도 그럼 ㅇㅇ diff --git a/zeta_python/completed/15657.py b/zeta_python/completed/15657.py new file mode 100644 index 0000000..6cdfbb3 --- /dev/null +++ b/zeta_python/completed/15657.py @@ -0,0 +1,13 @@ +N, M = map(int, input().split()) +K = list(map(int, input().split()));K.sort() +trace = [([v], M, i) for i, v in reversed(list(enumerate(K)))] # prev, depth, now + +while trace: + p, d, n = trace.pop() + if d == 1: + print(" ".join(map(str, p))) + continue + for i in range(N-1, n-1, -1): + trace.append((p + [K[i]], d-1, i)) + +# 아마도 백트래킹일거임 아마도 그럼 ㅇㅇ