//第一个字符:R
//第二个字符:BR
//第三个字符:RBBR
//第四个字符:BRRBRBBR
//第五个字符:RBBRBRRBBRRBRBBR
//第i个字符=i-1号字符串取反+i-号字符串
//第一个字符串第1个字符 ---R
//第二个字符串第2个字符 ---R
//第三个字符串第3个字符 ---B
//第四个字符串第6个字符 ---B ---下表为7的字符
//第五个字符串第8个字符 ---B ---下表为8的字符
// 输出描述:
// 输出T行表示答案:
// 输出“blue”表示是字符B
// 输出“red”表示是字符R
function exportStr(arr){//t表示T组用例,arr每行包含n,k;n:表示第n个字符串,k表示下表为K的字符
for(let i = 0; i<arr.length; i++){
arr[i]
//计算反转几次
let reversNum = reversNumber(arr[i][0],arr[i][1])
// if(maxlength === 1 ||(arr[i][1]+1) < (maxlength/2)){
// reversNum = arr[i][0]-1
// }else{
// reversNum = arr[i][0]-2
// }
console.log(arr[i],reversNum)
//反转偶数次还是R,反转奇数次为B
if(reversNum %2 === 0){
console.log("red")
}else{
console.log("blue")
}
}
}
function reversNumber(n,k){
console.log(n,k)
//计算反转几次
let reversNum = 0
//计算该行元素长度
let maxlength = 2**(n-1)
if(maxlength === 1 ||(k+1) < (maxlength/2)){
return n-1
}else{
if(n-1 === 1){
return 0
}else{
reversNumber(n-1,k - maxlength/2)
}
}
}
// exportStr([[1,0],[2,1],[3,2],[4,6],[5,8]])
exportStr([[5,8]])