已解决
LeetCode 2103.环和杆
来自网友在路上 172872提问 提问时间:2023-11-03 23:49:34阅读次数: 72
最佳答案 问答题库728位专家为你答疑解惑
原题链接:力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台
C++代码
常规
class Solution {
public:int countPoints(string rings) {int count = 0;set<string>se[10];for(int i=1,j=0;i<rings.length();i+=2,j+=2){se[rings[i]-'0'].insert(to_string(rings[j]));}for(int i=0;i<10;i++){if(se[i].size()==3) count++; }return count;}
};
Python代码
位运算
class Solution:def countPoints(self, rings: str) -> int:n,count = len(rings),0binary_map = [0]*17 # R - B = 17for i in range(0,n,2):binary_map[ord(rings[i]) - ord('B')] |= 1 << (int(rings[i+1]) - int('0')) for i in range(10):tmp = 0for ch in ['R','G','B']:tmp += (binary_map[ord(ch)-ord('B')] >> i) & 1 #第i根杆 上是否有ch颜色的圈if tmp == 3:count += 1return count
查看全文
99%的人还看了
相似问题
猜你感兴趣
版权申明
本文"LeetCode 2103.环和杆":http://eshow365.cn/6-31341-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!
- 上一篇: Java文件操作详解
- 下一篇: 天空卫士在全球和中国两大报告中被Gartner列为推荐和代表性供应商