C++描述 LeetCode1128. 等价多米诺骨牌对的数量
C++描述 LeetCode1128. 等价多米诺骨牌对的数量
大家好,我叫亓官劼(qí guān jié ),在CSDN中记录学习的点滴历程,时光荏苒,未来可期,加油~博主目前仅在CSDN中写博客,唯一博客更新的地址为:亓官劼的博客 ,同时正在尝试在B站中做一些内容分享,B站主页为: 亓官劼的B站主页
本文原创为亓官劼,请大家支持原创,部分平台一直在恶意盗取博主的文章!!!
若需联系博主,可以联系本人微信:qiguanjie2015
给你一个由一些多米诺骨牌组成的列表 dominoes
。
如果其中某一张多米诺骨牌可以通过旋转 0
度或 180
度得到另一张多米诺骨牌,我们就认为这两张牌是等价的。
形式上,dominoes[i] = [a, b]
和 dominoes[j] = [c, d]
等价的前提是 a==c
且 b==d
,或是 a==d
且 b==c
。
在 0 <= i < j < dominoes.length
的前提下,找出满足 dominoes[i]
和 dominoes[j]
等价的骨牌对 (i, j)
的数量。
示例:
输入:dominoes = [[1,2],[2,1],[3,4],[5,6]]
输出:1
提示:
1 <= dominoes.length <= 40000
1 <= dominoes[i][j] <= 9
题解思路
使用统一的编码对二元组进行编码,这里采用小的做十位数,大的做个位数的策略,然后使用一个vector进行计数,每次看当前编码已有的个数,使用当前的多米诺骨牌可以和之前的每一对形成新的一对,所以更新ans += num[val];
算法实现
class Solution {public:int numEquivDominoPairs(vector<vector<int>>& dominoes) {int ans = 0;vector<int> num(100);for(int i = 0; i < dominoes.size(); i++){// 按照统一的编码,小的做十位数,大的做个位数int val = dominoes[i][0] > dominoes[i][1] ? dominoes[i][1] * 10 + dominoes[i][0] : dominoes[i][0] * 10 + dominoes[i][1];// 如果已有,则可以和每一个组成一对等价对,更新ansans += num[val];num[val]++;}return ans;}
};
算法效率
C++描述 LeetCode1128. 等价多米诺骨牌对的数量相关推荐
- 【每日一题】 1128. 等价多米诺骨牌对的数量
[每日一题] 1128. 等价多米诺骨牌对的数量 避免每日太过咸鱼,一天搞定一道LeetCode算法题 一.题目描述 给你一个由一些多米诺骨牌组成的列表 dominoes. 如果其中某一张多米诺骨牌可 ...
- 1128. 等价多米诺骨牌对的数量
链接:1128. 等价多米诺骨牌对的数量 题解: class Solution {public:int numEquivDominoPairs(vector<vector<int>& ...
- 刷爆力扣之等价多米诺骨牌对的数量
刷爆力扣之等价多米诺骨牌对的数量 HELLO,各位看官大大好,我是阿呆
- leetcode 1128. 等价多米诺骨牌对的数量
给你一个由一些多米诺骨牌组成的列表 dominoes. 如果其中某一张多米诺骨牌可以通过旋转 0 度或 180 度得到另一张多米诺骨牌,我们就认为这两张牌是等价的. 形式上,dominoes[i] = ...
- LeetCode 1128. 等价多米诺骨牌对的数量(哈希)
1. 题目 给你一个由一些多米诺骨牌组成的列表 dominoes. 如果其中某一张多米诺骨牌可以通过旋转 0 度或 180 度得到另一张多米诺骨牌,我们就认为这两张牌是等价的. 形式上,dominoe ...
- 等价多米诺骨牌对的数量
给你一个由一些多米诺骨牌组成的列表 dominoes. 如果其中某一张多米诺骨牌可以通过旋转 0 度或 180 度得到另一张多米诺骨牌,我们就认为这两张牌是等价的. 形式上,dominoes[i] = ...
- 每日一题:leetcode1128.等价多米诺骨牌对数
题目描述 题目分析 看到题目以后第一个想法是遍历数组,对每个元素有一个数据结构中保存了该元素出现的次数,然后往结果中相加(表示该元素和前面的对数),然后再将元素出现的次数加一. 思考用什么数据结构保存 ...
- LeetCode 1128.等价多米诺骨牌
题目 给你一个由一些多米诺骨牌组成的列表 dominoes. 如果其中某一张多米诺骨牌可以通过旋转 0 度或 180 度得到另一张多米诺骨牌,我们就认为这两张牌是等价的. 形式上,dominoes[i ...
- POJ 1135 Domino Effect(最短路 多米诺骨牌)
题意 题目描述: 你知道多米诺骨牌除了用来玩多米诺骨牌游戏外,还有其他用途吗?多米诺骨牌游戏:取一 些多米诺骨牌,竖着排成连续的一行,两张骨牌之间只有很短的空隙.如果排列得很好,当你推 倒第 1张骨 ...
最新文章
- 人工神经网络在行人轨迹预测上的应用
- java 怎么中断一个线程
- 几个常用的Linux监控脚本
- inner join和left join还有right join的区别
- 代码夹带是洪水猛兽吗?
- spring aop记录日志方案设计
- CSS美化滚动条的方法
- Shell 标准输入、输出和错误
- jvisualvm工具使用
- java 性能测试文档模板_最好用的数据库文档生成工具
- Thinkpad连续响4遍4个短嘀故障记录
- 淘宝直通车补单方法技巧 短期打造爆款
- 时隔两年之后,证监会官网再次更新瑞丰银行的IPO进度。
- VRF抽签与投票的思考
- mysql backup 使用_MySQLBackup 使用说明
- 流处理系统(Flink, Kafka和Pravega)学习笔记
- 知云文献翻译打不开_神器推荐丨知云文献翻译软件 WIN/MAC/IOS/ANDROID/网页版
- 下载并安装 Metricbeat
- 闲扯测试工程师之发展(觉得不错,拿来与大家分享)
- matlab用RNN预测股票,使用RNN预测股票价格系列一