leetcode_2103 环和杆

1. 题意

10个环。给定一个字符串每两个字符一组,第一个字符表示颜色(R,G,B),第二个字符表示在第几根杆上。求多少根杆上每个颜色都有。

环和杆

2. 题解

直接模拟记录即可,用位运算压缩。

cpp 复制代码
class Solution {
public:
    int countPoints(string rings) {
        function<int(char)> getIdx = [](char c)->int
        {
            if ( c == 'R')
                return 1;
            if ( c == 'G')
                return 2;
            if ( c == 'B' )
                return 4;
            return 0;
        };

        int sz = rings.size();

        int mem[10] = {0};
        for ( int i = 0;i < sz; i += 2) {
            mem[rings[i + 1] - '0'] |= getIdx(rings[i]);
        }


        return count(mem, mem + 10, 7);
    }

};
相关推荐
KingRumn2 小时前
Linux信号之标准信号与实时信号
linux·算法
源代码•宸6 小时前
Leetcode—620. 有趣的电影&&Q3. 有趣的电影【简单】
数据库·后端·mysql·算法·leetcode·职场和发展
2301_800256116 小时前
地理空间数据库中的CPU 和 I/O 开销
数据库·算法·oracle
一个不知名程序员www7 小时前
算法学习入门---结构体和类(C++)
c++·算法
阿亮爱学代码8 小时前
Java 面试 (三)
面试·职场和发展
XFF不秃头9 小时前
力扣刷题笔记-旋转图像
c++·笔记·算法·leetcode
王老师青少年编程9 小时前
csp信奥赛C++标准模板库STL案例应用3
c++·算法·stl·csp·信奥赛·lower_bound·标准模版库
有为少年10 小时前
Welford 算法 | 优雅地计算海量数据的均值与方差
人工智能·深度学习·神经网络·学习·算法·机器学习·均值算法
Ven%10 小时前
从单轮问答到连贯对话:RAG多轮对话技术详解
人工智能·python·深度学习·神经网络·算法