题目 3342: 蓝桥杯2025年第十六届省赛真题-红黑树

题目 3342: 蓝桥杯2025年第十六届省赛真题-红黑树

时间限制: 2s 内存限制: 192MB 提交: 273 解决: 89

题目描述

小蓝最近学习了红黑树,红黑树是一种特殊的二叉树,树上的结点有两种 类型:红色结点和黑色结点。 小蓝在脑海中构造出一棵红黑树,构造方式如下:

1)根结点是一个红色结点;

2)如果当前结点 curNode 是红色结点,那么左子结点 curNode.left 是红色 结点,右子结点 curNode.right 是黑色结点;

3)如果当前结点 curNode 是黑色结点,那么左子结点 curNode.left 是黑色 结点,右子结点 curNode.right 是红色结点;

此二叉树前几层的形态如下图所示:

小蓝会从树上随机挑选结点,请你帮忙判断下他选出的是红色结点还是黑色结点。

输入格式

输入的第一行包含一个正整数 m ,表示小蓝挑选的结点数。

接下来 m 行,每行包含两个正整数 ni , ki ,用一个空格分隔,表示小蓝挑 选的结点是第 ni 行(从上往下数)第 ki 个(从左往右数)结点。

输出格式

输出 m 行,每行包含一个字符串,依次表示小蓝每次挑选的结点的答案。 RED 表示红色结点,BLACK 表示黑色结点。

样例输入复制

2

1 1

2 2

样例输出复制

RED

BLACK

提示

【样例说明】

根据示意图可以观察出答案:

第一行第一个结点,为根结点,红色;第二行第二个结点为黑色结点。

【评测用例规模与约定】

对于 20% 的评测用例,1 ≤ m ≤ 5 , 1 ≤ ni ≤ 5 ;

对于 40% 的评测用例,1 ≤ m ≤ 10 , 1 ≤ ni ≤ 5 ;

对于 60% 的评测用例,1 ≤ m ≤ 5 , 1 ≤ ni ≤ 10 ;

对于 80% 的评测用例,1 ≤ m ≤ 10 , 1 ≤ ni ≤ 15 ;

对于所有评测用例,1 ≤ m ≤ 10 , 1 ≤ ni ≤ 30 ,1 ≤ ki ≤ 2 ni−1 。

1.分析

存储类似堆,右节点和父结点颜色不同,左节点和父结点颜色相同。

从起始位置计算到1。

看颜色是否和红色相同。

2.代码

cpp 复制代码
#include<iostream>
#include<cmath>
using namespace std;
const int MAX = 1e5;
typedef long long LL;
int n;
int main() {
    cin >> n;
    while (n--) {
        int x, y;
        cin >> x >> y;
        int d = pow(2, x - 1)-1 + y;
        int f = 1;
        while (d > 1) {
            if (d % 2 != 0) {
                f *= -1;
            }
            d /= 2;
        }
        if (f == 1) cout << "RED" << endl;
        else cout << "BLACK" << endl;
    }
    return 0;
}
相关推荐
qq_459234425 天前
【题库】| 商用密码应用安全性评估从业人员考核题库(四十)
职场和发展·密码学·学习方法·考核·商用密码·商用密码应用安全性评估·密评
敲敲了个代码5 天前
[特殊字符] 空数组的迷惑行为:为什么 every 为真,some 为假?
前端·javascript·react.js·面试·职场和发展
诚思报告YH5 天前
视频面试软件市场洞察:2026 - 2032年复合年均增长率(CAGR)为10.3%
面试·职场和发展
重生之后端学习5 天前
74. 搜索二维矩阵
开发语言·数据结构·算法·职场和发展·深度优先
tyb3333335 天前
leetcode:吃苹果和队列
算法·leetcode·职场和发展
Pitiless-invader5 天前
MySQL 相关知识及面试问题汇总
面试·职场和发展
重生之后端学习5 天前
35. 搜索插入位置
java·数据结构·算法·leetcode·职场和发展·深度优先
逆境不可逃5 天前
【从零入门23种设计模式08】结构型之组合模式(含电商业务场景)
线性代数·算法·设计模式·职场和发展·矩阵·组合模式
筱昕~呀5 天前
冲刺蓝桥杯-DFS板块(第二天)
算法·蓝桥杯·深度优先
zheshiyangyang5 天前
前端面试基础知识整理【Day-10】
前端·面试·职场和发展