当前位置: 首页 > news >正文

【Java|golang】2103. 环和杆---位运算

总计有 n 个环,环的颜色可以是红、绿、蓝中的一种。这些环分别穿在 10 根编号为 0 到 9 的杆上。

给你一个长度为 2n 的字符串 rings ,表示这 n 个环在杆上的分布。rings 中每两个字符形成一个 颜色位置对 ,用于描述每个环:

第 i 对中的 第一个 字符表示第 i 个环的 颜色(‘R’、‘G’、‘B’)。
第 i 对中的 第二个 字符表示第 i 个环的 位置,也就是位于哪根杆上(‘0’ 到 ‘9’)。
例如,“R3G2B1” 表示:共有 n == 3 个环,红色的环在编号为 3 的杆上,绿色的环在编号为 2 的杆上,蓝色的环在编号为 1 的杆上。

找出所有集齐 全部三种颜色 环的杆,并返回这种杆的数量。

示例 1:
在这里插入图片描述

输入:rings = “B0B6G0R6R0R6G9”
输出:1
解释:

  • 编号 0 的杆上有 3 个环,集齐全部颜色:红、绿、蓝。
  • 编号 6 的杆上有 3 个环,但只有红、蓝两种颜色。
  • 编号 9 的杆上只有 1 个绿色环。
    因此,集齐全部三种颜色环的杆的数目为 1 。
    示例 2:
    在这里插入图片描述

输入:rings = “B0R0G0R9R0B0G0”
输出:1
解释:

  • 编号 0 的杆上有 6 个环,集齐全部颜色:红、绿、蓝。
  • 编号 9 的杆上只有 1 个红色环。
    因此,集齐全部三种颜色环的杆的数目为 1 。
    示例 3:

输入:rings = “G4”
输出:0
解释:
只给了一个环,因此,不存在集齐全部三种颜色环的杆。

提示:

rings.length == 2 * n
1 <= n <= 100
如 i 是 偶数 ,则 rings[i] 的值可以取 ‘R’、‘G’ 或 ‘B’(下标从 0 开始计数)
如 i 是 奇数 ,则 rings[i] 的值可以取 ‘0’ 到 ‘9’ 中的一个数字(下标从 0 开始计数)

    public int countPoints(String rings) {int[] ints = new int[10];int res=0;for (int i = 0; i < rings.length(); i+=2) {int j = rings.charAt(i + 1) - '0';ints[j]|=rings.charAt(i)=='R'?1:rings.charAt(i)=='G'?2:4;if (ints[j]==7){res++;ints[j]=ints[j]<<1;}}return res;}

在这里插入图片描述

func countPoints(rings string) int {ints:=[10]int{}res:=0for i := 0; i < len(rings); i+=2 {j := rings[i + 1] - '0'if rings[i]=='R' {ints[j]|=1}else if rings[i]=='G' {ints[j]|=2}else {ints[j]|=4}if ints[j]==7{res++ints[j]=ints[j]<<1}}return res
}

在这里插入图片描述

http://www.lryc.cn/news/218006.html

相关文章:

  • [SSD综述 1.4] SSD固态硬盘的架构和功能导论
  • 【C++那些事儿】类与对象(1)
  • 集简云x slack(自建)无需API开发轻松连接OA、电商、营销、CRM、用户运营、推广、客服等近千款系统
  • JS模块化,ESM模块规范的 导入、导出、引用、调用详解
  • markdown常用的快捷键
  • VSCode中的任务什么情况下需要配置多个问题匹配器problemMatcher?多个问题匹配器之间的关系是什么?
  • C语言鞍点数组改进版
  • K8s:部署 CNI 网络组件+k8s 多master集群部署+负载均衡及Dashboard k8s仪表盘图像化展示
  • 【数据结构】树家族
  • Vert.x学习笔记-Vert.x的基本处理单元Verticle
  • 干货分享:基于 LSTM 的广告库存预估算法
  • dataframe删除某一列
  • 提升ChatGPT答案质量和准确性的方法Prompt engineering
  • SpringBoot + Vue2项目打包部署到服务器后,使用Nginx配置SSL证书,配置访问HTTP协议转HTTPS协议
  • HTML 表格
  • AIGC(生成式AI)试用 10 -- 安全性问题
  • STM32循迹小车原理介绍和代码示例
  • Nginx 配置详细讲解
  • gdb 日志记录不显示到屏幕的方法(gdb13最新版)
  • JAVA智慧工地管理系统源码基于微服务
  • 学习笔记三十四:Ingress和 Ingress Controller概述
  • Webpack的Tree Shaking。它的作用是什么?
  • 研发效能DevOps: Git安装
  • ZZ038 物联网应用与服务赛题第D套
  • 基于STM32设计的室内环境监测系统(华为云IOT)_2023
  • UE5C++学习(一)--- 增强输入系统
  • 好物周刊#29:项目管理软件
  • 玻色量子“天工量子大脑”亮相中关村论坛,大放异彩
  • 使用Gorm进行高级查询
  • 基于梯度算法的无人机航迹规划-附代码