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

asp网站显示建设中如何在空白服务器上搭建网站

asp网站显示建设中,如何在空白服务器上搭建网站,wordpress外联,站长统计app网站1 题目:情侣牵手 官方标定难度:难 n 对情侣坐在连续排列的 2n 个座位上,想要牵到对方的手。 人和座位由一个整数数组 row 表示,其中 row[i] 是坐在第 i 个座位上的人的 ID。情侣们按顺序编号,第一对是 (0, 1)&#…

1 题目:情侣牵手

官方标定难度:难

n 对情侣坐在连续排列的 2n 个座位上,想要牵到对方的手。

人和座位由一个整数数组 row 表示,其中 row[i] 是坐在第 i 个座位上的人的 ID。情侣们按顺序编号,第一对是 (0, 1),第二对是 (2, 3),以此类推,最后一对是 (2n-2, 2n-1)。

返回 最少交换座位的次数,以便每对情侣可以并肩坐在一起。 每次交换可选择任意两人,让他们站起来交换座位。

示例 1:

输入: row = [0,2,1,3]
输出: 1
解释: 只需要交换row[1]和row[2]的位置即可。
示例 2:

输入: row = [3,2,0,1]
输出: 0
解释: 无需交换座位,所有的情侣都已经可以手牵手了。

提示:

2n == row.length
2 <= n <= 30
n 是偶数
0 <= row[i] < 2n
row 中所有元素均无重复

2 solution

将需要交换位置的情侣合并成一个个小集合,每个集合为一个环,即
A ->B->C->A, 每个环交换 m - 1 次,m 为环的大小

代码

class Solution {
public:int minSwapsCouples(vector<int> &row) {int n = row.size() / 2;int f[n];for (int i = 0; i < n; i++) {f[i] = i;}auto const find = [&](auto self, int x) {if (f[x] == x) return x;return f[x] = self(self, f[x]);};for (int i = 0; i < n; i++) {int x = row[i * 2] / 2;int y = row[i * 2 + 1] / 2;int p = find(find, y);int q = find(find, x);if(p != q){f[p] = q;}}vector<int> cnt(n);for(int i = 0; i < n; i++) cnt[find(find, i)]++;int sum = 0;for(int x:cnt) if(x) sum += x - 1;return sum;}
};

结果

在这里插入图片描述

http://www.yayakq.cn/news/100447/

相关文章:

  • 大连网站建设服务wordpress 自动转中文
  • 网站站点是什么导师微信赚钱只投资10元
  • 如何在网站中做二级下拉菜单专业网络推广方法
  • 怎么做电脑端网站设计稿学校网站建设配套制度
  • 做一个网站中的搜索功能怎么做公司法人变更流程
  • 常见的网站空间主要有wordpress theme check
  • 悬浮网站底部代码深圳公司招聘
  • 做视频网站许可证wordpress自定义分类分页
  • 江苏省建设厅工会网站wordpress最好用的虚拟主机
  • 庄河城乡建设管理局网站公众号运营平台
  • 下单的网站建设教程seo百度关键词优化
  • 怎么查一个网站做的外链游戏租号网站开发
  • 外贸网站如何推广做进料加工在哪个网站上做
  • 怎样为企业设计网站ipad网站制作
  • 个人网站被黑了网页网站怎么做的吗
  • 网站跟换域名金华网站设计公司
  • 邯郸网站制作基本流程海沧网站制作
  • 网站加上视频对seo影响哪个网站可以做设计比赛
  • 上市公司做家具网站引流推广方案
  • 企业网站建设排名价格迪奥生物做图网站
  • phpcms 移动网站模板网站建设中 意思
  • 网站免费模版温州市手机网站制作哪家便宜
  • 保定 营销型网站建设哈尔滨搜索引擎建站
  • 湖北做网站找谁企业网络组建方案
  • 网站制作 台州网站数据库备份怎么做
  • 取个网站建设公司名字深圳英文网站建设公司
  • 做彩票网站需要学习什么做网站需要哪些语言
  • 高性能网站建设进阶...什么都不懂能去干运维吗
  • 网站空间的建设深圳企业年报网上申报入口
  • 做运营需要具备什么能力深圳私人网站优化