递归的思想也是将大的问题不断化小,要注意起始条件和递归的结束条件
# 对称就是最大的美学,现有一道关于对称字符串的美学。已知:
# 第1个字符串:R
# 第2个字符串:BR
# 第3个字符串:RBBR
# 第4个字符串:BRRBRBBR
# 第5个字符串:RBBRBRRBBRRBRBBR
# 第一行输入一个T,表示有T组用例;
# 解析来输入T行,每行输入两个数字,表示n,k
# 1 ≤ T ≤ 100;
# 1 ≤ n ≤ 64;
# 0 ≤ k < 2^(n-1);
# 输出T行表示答案;
# 输出 "blue" 表示字符是B;
# 输出 "red" 表示字符是R。
import math
t = int(input())
arr = []
for i in range(t):
arr.append(list(map(float, input().split())))
def getResult(arr):
for n, k in arr:
print(getNK(n, k ))
def getNK(n, k):
if n == 1:
return 'red'
if n==2:
if k == 0:
return 'blue'
else:
return 'red'
half = math.pow(2, n-2)
if k >= half:
return getNK(n-1, k -half)
else:
return 'blue' if getNK(n-1, k) == 'red' else 'red'
getResult(arr)
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。