From c89c6c275fbd712cb4ce10d987a0d95eeb8b379b Mon Sep 17 00:00:00 2001 From: heeheejj Date: Sun, 3 Dec 2023 01:42:25 +0900 Subject: [PATCH] =?UTF-8?q?Week28=20PRG=20121685=20=EC=9C=A0=EC=A0=84?= =?UTF-8?q?=EB=B2=95=EC=B9=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...40\354\240\204\353\262\225\354\271\231.py" | 44 +++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 "heeheej/week28/PRG_121685_\354\234\240\354\240\204\353\262\225\354\271\231.py" diff --git "a/heeheej/week28/PRG_121685_\354\234\240\354\240\204\353\262\225\354\271\231.py" "b/heeheej/week28/PRG_121685_\354\234\240\354\240\204\353\262\225\354\271\231.py" new file mode 100644 index 0000000..c81b827 --- /dev/null +++ "b/heeheej/week28/PRG_121685_\354\234\240\354\240\204\353\262\225\354\271\231.py" @@ -0,0 +1,44 @@ +# PCCP 모의고사 1 3번 유전법칙 +# 재귀함수 +# 4의 배수일 때 4로 나눈 나머지 0인 경우 4로 해줘야함 + +from collections import defaultdict + +def solution(queries): + answer = [] + d = defaultdict(list) + d["RR"] = ["RR", "RR", "RR", "RR"] + d["Rr"] = ["RR", "Rr", "Rr", "rr"] + d["rr"] = ["rr", "rr", "rr", "rr"] + + for n, p in queries: + arr = [] + if p % 4 == 0: + arr.append(4) + else: + arr.append(p % 4) + + def recursive(gen, p): + if gen == 2: + return + # arr.append((p//4+1)%4) + # recursive(gen-1, p//4+1) + if p % 4 == 0: + arr.append((p//4)%4) + recursive(gen-1, p//4) + else: + arr.append((p//4+1)%4) + recursive(gen-1, p//4+1) + + if n == 1: + answer.append("Rr") + else: + recursive(n, p) + arr = arr[::-1] + prev = "Rr" + for x in arr: + prev = d[prev][x-1] + print(prev) + answer.append(prev) + + return answer \ No newline at end of file