题目简化和分析:

这题不用说怎么分析了吧,这一看就是个并查集求连通分量个数的经典模板。

我们需要将 \(i\) 和 \(p_i\) 进行合并。

遍历每个 \(i\) 与 \(i+1\) 是否属于同一个集合。

  • 属于不管。
  • 不属于贡献增加,并合并。

注意范围!

Solution:

#include<bits/stdc++.h>

using namespace std;

typedef long long ll;
#define int long long
const int N=1e4+50;
const int mod=1e9+7;
int t,n;
int p[N],a[N];
int find(int x){
if(x!=p[x]) return p[x]=find(p[x]);
return p[x];
}
signed main()
{
scanf("%lld",&n);
for(int i=1;i<=n;++i) p[i]=i;
for(int i=1;i<=n;++i){
scanf("%lld",&a[i]);
int fx=find(i),fy=find(a[i]);
if(fx!=fy){
p[fx]=fy;
}
}
int ans=1;
for(int i=1;i<n;++i){
int fx=find(i),fy=find(i+1);
if(fx!=fy){
ans++;
p[fx]=fy;
}
}
printf("%lld\n",ans);
}

CF755C的更多相关文章

  1. CF755C PolandBall and Forest 题解

    Content 给定无向图的 \(n\) 个点的父亲节点,求无向图的联通块个数. 数据范围:\(1\leqslant n\leqslant 10^4\). Solution 并查集模板题. 我们将在当 ...

随机推荐

  1. 曲线艺术编程 coding curves 第十二章 超级椭圆与超级方程(Superellipses and Superformulas)

    第十三章 超级椭圆与超级方程(Superellipses and Superformulas) 原作:Keith Peters https://www.bit-101.com/blog/2022/11 ...

  2. [渗透测试]—7.1 漏洞利用开发和Shellcode编写

    在本章节中,我们将学习漏洞利用开发和Shellcode编写的基本概念和技巧.我们会尽量详细.通俗易懂地讲解,并提供尽可能多的实例. 7.1 漏洞利用开发 漏洞利用开发是渗透测试中的高级技能.当你发现一 ...

  3. GO web学习(一)

    跟着b站https://space.bilibili.com/361469957 杨旭老师学习做的笔记 开启web服务 •http.ListenAndServer() •第一个参数是网络地址 如果为& ...

  4. SQL Server中获取不同格式的日期

    select * from 表名 where Convert(varchar(100),日期字段,23)='2008-12-15' Convert函数的应用: Select CONVERT(varch ...

  5. 即构SDK9月迭代:外部采集、音频频谱、房间附加消息等多个模块功能上新

    即构SDK9月迭代来了,本月SDK在外部采集.音频频谱.房间附加消息等多个功能模块均有新功能上线,并且还针对K歌音乐场景下,优化了变调功能效果.以下是详细的迭代内容: LiveRoom   新增 1. ...

  6. linux程序开机自动运行-未解决

    愚认为,本质上就是把程序放在etc文件目录下,让系统开机时,把程序一起编译运行了.orz 首先可以写个shell脚本如下: #!/bin/bash # 定义需要按顺序启动的 Python 程序列表 P ...

  7. zabbix system.run

    Zabbix的system.run是一个主动模式的监控项,它允许用户在Zabbix服务器上执行自定义的命令或脚本,并获取执行结果作为监控数据. system.run监控项的配置包括以下几个关键参数: ...

  8. 关于reids免安装的使用与注意事项

    redis是我们现在常用的缓存数据库.可是redis官方网站只提供linux版本,而我们又习惯在windows系统上使用开发工具,这又怎么办呢? 幸好微软官方也提供了windows版本,方便根据实际需 ...

  9. cesium 绑定dom弹窗(跟随模型)

    https://blog.csdn.net/qq_36266612/article/details/109648367?utm_term=cesium%E6%80%8E%E4%B9%88%E6%B7% ...

  10. Could not extract response: no suitable `HttpMessageConverter` found for response type [class wechat.xx] and content type [text/plain] 问题

    1. 问题复现 话不多说,先贴出问题代码:这里的GetUserInfoByAccessToken是我自定义的一个实体类. GetUserInfoByAccessToken getUserInfoByA ...