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

路由器 做网站软文网站推广法

路由器 做网站,软文网站推广法,wordpress dooplay,大公司网站建设建网站原题链接 https://ac.nowcoder.com/acm/contest/108038/D 题目描述 小红有一个长度为n的数组a,下标从1开始,如果两个数a[i]和a[j]差值为1,则这两个数之间存在一条无向边,问为了使得所有索引之间相互可达,小红至少需…

原题链接

https://ac.nowcoder.com/acm/contest/108038/D

题目描述

小红有一个长度为n的数组a,下标从1开始,如果两个数a[i]和a[j]差值为1,则这两个数之间存在一条无向边,问为了使得所有索引之间相互可达,小红至少需要手动再加多少条边。

解题思路

使用map统计每个数的出现次数,然后从小到大遍历数字,对于每个数字x,假设x有y个,检查x-1是否存在,如果x-1不存在,则需要向比x更小的一个数字连一条边,假设x-1和x+1都不存在,则不仅需要向比x更小的一个数字连一条边,还需要在所有的x之间连边,不难得知需要再连y-1条边。详见代码。

代码(CPP)

#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using ull = unsigned long long;
#define endl "\n"
const int maxn = 2e5 + 10;
const ll INF = 0x3f3f3f3f3f3f3fLL;
int a[maxn];void solve() {int n;cin >> n;map<int, int> mp;for (int i = 1; i <= n; i++) {cin >> a[i];mp[a[i]]++;}int ans = 0;for (auto x : mp) {if (!mp.count(x.first - 1)) {ans++;if (!mp.count(x.first + 1)) {ans += x.second - 1;}}}cout << ans - 1 << endl;
}int main() {
//     freopen("in.txt", "r", stdin);ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);cout << fixed;cout.precision(18);int t;cin >> t;while (t--)solve();return 0;
}
http://www.dtcms.com/wzjs/443112.html

相关文章:

  • 呼和浩特企业网站建设免费推广有哪些
  • 最优网络做网站怎么样企业网络推广计划
  • 石家庄市最新疫情区域长沙seo公司排名
  • 网站建设需要交印花税吗营销方案的几个要素
  • 什么网站能看到专业的做面包视频南宁网站seo外包
  • 天津企业网站开发指数工具
  • 郑州做网站推广电话新的seo网站优化排名 排名
  • 刷QQ砖的网站咋做谷歌收录提交入口
  • 太原哪里做网站网络营销的主要内容包括
  • 郑州企业网站开发电子商务沙盘seo关键词
  • 网站二级域名怎么做seo的搜索排名影响因素主要有
  • 品牌的佛山网站建设价格公关服务
  • 网站建设行业分析搭建一个网站
  • 网站推广公司兴田德润在哪儿郑州谷歌优化外包
  • 武汉做网站好的公司网址大全浏览器主页
  • 凡科建站登录入口官方正版产品线上推广方式都有哪些
  • 建立生态产品trinseo公司
  • 天津市工程建设公众信息网官网网络优化师
  • 广州手机网站案例建网站找谁
  • 国家建设部投诉网站企业文化培训
  • 广安发展建设集团门户网站谈谈对seo的理解
  • 网站设计制作一般多少钱百度在线翻译
  • 用层还是表格做网站快百度极速版
  • 现在学做网站赚钱吗推广品牌的策划方案
  • 中国建设银行北京分行门户网站公告免费网站推广软件下载
  • 网站建设的中期目标贵港seo
  • 哪里有专业做网站的网络优化公司
  • 网站预算怎么做企业网站建设方案策划
  • 自己本地可以做网站服务器搜索引擎技巧
  • ps做网站首页的尺寸北京专业seo公司