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

北京最大网站建设公司排名哪些网站动效做的不错

北京最大网站建设公司排名,哪些网站动效做的不错,把照片做成视频,微信分销网站建设哪家好等价多米诺骨牌对的数量 1128. 等价多米诺骨牌对的数量 - 力扣(LeetCode) 题目: 给你一组多米诺骨牌 dominoes 。 形式上,dominoes[i] [a, b] 与 dominoes[j] [c, d] 等价 当且仅当 (a c 且 b d) 或者 (a d 且 b c) 。即…

等价多米诺骨牌对的数量

1128. 等价多米诺骨牌对的数量 - 力扣(LeetCode)

题目:

给你一组多米诺骨牌 dominoes 。

形式上,dominoes[i] = [a, b] 与 dominoes[j] = [c, d] 等价 当且仅当 (a == c 且 b == d) 或者 (a == d 且 b == c) 。即一张骨牌可以通过旋转 0 度或 180 度得到另一张多米诺骨牌。

在 0 <= i < j < dominoes.length 的前提下,找出满足 dominoes[i] 和 dominoes[j] 等价的骨牌对 (i, j) 的数量。

示例 1:

输入:dominoes = [[1,2],[2,1],[3,4],[5,6]]
输出:1

示例 2:

输入:dominoes = [[1,2],[1,2],[1,1],[1,2],[2,2]]
输出:3

提示:

  • 1 <= dominoes.length <= 4 * 104
  • dominoes[i].length == 2
  • 1 <= dominoes[i][j] <= 9
自己的思路和代码:
思路:

        开始时,我的思路是两次遍历,和冒泡排序的实现方式差不多,但是我写出一版来显示超出时间限制。没有办法,只能修改,还是冒泡排序的实现方式,但是在每一次冒泡的时候,我会剔除选过的多米诺骨牌对,这样会减少运行的时间,成功了,但是时间还是很慢。

代码:
class Solution {
public:int numEquivDominoPairs(vector<vector<int>>& dominoes) {int sum = 0;int arr[dominoes.size()];memset(arr, 0, sizeof(arr));for(int i=0; i<dominoes.size()-1; i++) {if(arr[i] == 1) continue;int temp = 0;for(int j=i+1; j<dominoes.size(); j++) {if(arr[j] == 1) continue;if((dominoes[i][0]==dominoes[j][0] && dominoes[i][1]==dominoes[j][1]) || (dominoes[i][1]==dominoes[j][0] && dominoes[i][0]==dominoes[j][1])) {temp++;arr[j] = 1;}}//sum += temp;for(int i=0; i<=temp; i++) {sum += i;}}return sum;}
};
他人的思路和代码:

因为我自己实现的方法比较暴力,并且运行的时间也不是很理想,所以查看了题解,找了一个比较好的方法。

思路:

本题中我们需要统计所有等价的多米诺骨牌,其中多米诺骨牌使用二元对代表,「等价」的定义是,在允许翻转两个二元对的的情况下,使它们的元素一一对应相等。

于是我们不妨直接让每一个二元对都变为指定的格式,即第一维必须不大于第二维。这样两个二元对「等价」当且仅当两个二元对完全相同。

注意到二元对中的元素均不大于 9,因此我们可以将每一个二元对拼接成一个两位的正整数,即 (x,y)→10x+y。这样就无需使用哈希表统计元素数量,而直接使用长度为 100 的数组即可。

代码:
class Solution {
public:int numEquivDominoPairs(vector<vector<int>>& dominoes) {vector<int> num(100);int ret = 0;for (auto& it : dominoes) {int val = it[0] < it[1] ? it[0] * 10 + it[1] : it[1] * 10 + it[0];ret += num[val];num[val]++;}return ret;}
};


文章转载自:

http://x0zMRCQN.gwdkg.cn
http://42DVIip6.gwdkg.cn
http://B2T4Rcnj.gwdkg.cn
http://VpxutgIO.gwdkg.cn
http://VJXi8k3c.gwdkg.cn
http://EzsJJSOf.gwdkg.cn
http://0vapFHlv.gwdkg.cn
http://vhcxdNkD.gwdkg.cn
http://h8ERdcB6.gwdkg.cn
http://3cmQoJlm.gwdkg.cn
http://qYreI3xS.gwdkg.cn
http://zRAY2XcY.gwdkg.cn
http://CFIXRhY9.gwdkg.cn
http://FyXCrgZT.gwdkg.cn
http://3Feun3oS.gwdkg.cn
http://ptB3ajxf.gwdkg.cn
http://tAPdkBuL.gwdkg.cn
http://dzBDoqRT.gwdkg.cn
http://xwymEWro.gwdkg.cn
http://IyfjqKSC.gwdkg.cn
http://L939CDiG.gwdkg.cn
http://QQpnLTen.gwdkg.cn
http://HRKaNtwF.gwdkg.cn
http://CBVqPFR2.gwdkg.cn
http://pBrovc6h.gwdkg.cn
http://qFFIuAxB.gwdkg.cn
http://bXnDxbCj.gwdkg.cn
http://sfjDVySp.gwdkg.cn
http://ohVeheNP.gwdkg.cn
http://QmOr62en.gwdkg.cn
http://www.dtcms.com/wzjs/642161.html

相关文章:

  • 单位还能建设网站吗长尾词seo排名
  • 广电基础设施建设官方网站WordPress主题分页代码
  • 东莞网站设计公司排名做网站和编程
  • wordpress页面关键词衡阳seo优化服务
  • 工程建设项目在哪个网站查询网站安全检测软件
  • 厦门最早做网站的公司郴州市12345官网
  • 网站建设 cn3万网站建设费会计分录
  • 婚礼摄影作品网站湖南省建设厅气源适配性目录2022
  • access数据库网站开发杭州网站开发制作公司
  • 网站背景音乐网站xml
  • 湖南城乡建设部网站江门当地的免费网站优化
  • 网站建站历史建站网址
  • p2p金融网站建设手机版网站案例
  • 广科网站开发怎么做干果网站
  • 大连模板网站制作推荐软件工程学费
  • 怎样使用网站后台的模板网站建设项目立项登记 表
  • 昆明医院网站建设纺织服装板块上市公司网站建设
  • nodejs做网站容易被攻击吗wordpress支持什么语言
  • 建设企业网站的深圳建筑工程交易服务中心网
  • 企业网站建设的上市公司怎么创建一个论坛
  • 陕西省医院网站建设管理做地图特效的网站
  • 松江做网站的公司智能建站程序
  • 做网站系统论坛网页设计
  • 西安商城网站开发制作重庆黄埔seo整站优化
  • android下载安装app网站优化推广费用
  • 网站架构组成部分北京vi设计
  • 手机网站有什么区别吗黄冈商城网站建设
  • 湖南省住房建设厅网站信息产业部网站备案查询
  • 那里有专做粮食的网站网站如何运营管理
  • 网站目录做跳转西安网站建设设计公司