博客
关于我
Educational Codeforces Round 37 (Rated for Div. 2)
阅读量:323 次
发布时间:2019-03-03

本文共 850 字,大约阅读时间需要 2 分钟。

前言

昨晚打了一场CF,战绩不太好,只写了ABCFG,赛后更正了E

在这里写一下题解

A

二分答案,直接判断

B

直接模拟即可

C

考虑到连续一段1里面事可以互换的,暴力扫一次即可

D

没做

E

题意:给你一个完全图,删去若干跳变,询问有多少个联通块

思路比较好的一道题,考试的时候没有想出来
对于每一个点,扫所有点,如果它们之间有边,就合并成一个联通快
扫的时候就扫没有合并的点
考虑到每一次合并,点数会少1,所以这个过程是O(n)的
然后再考虑点数不会边的情况,就是有边,这个过程是O(m)的
于是总体复杂度是O(n+m)的
CODE:

#include
#include
#include
#include
#include
#include
using namespace std;const int N=200005;int n,m;vector
e[N];int f[N];//并查集bool vis[N];int cnt;vector
ans[N];int find (int x){ return f[x]==x?x:f[x]=find(f[x]);}void dfs (int x){ /*printf("%d\n",x); system("pause");*/ vis[x]=true; ans[cnt].push_back(x); f[x]=x+1; int i=0; for (int u=find(1);u<=n;u=find(u+1)) { while (i

F

这题的话,先线性筛出所有数的约数个数

然后考虑到,一个数n的约数个数是不超过 n n
所以修改的次数不会很多,就5,6次左右
变到2,1就不会变了
再线段树上打标记即可

G

先分解质因数

二分答案,然后容斥得到个数就可以了

转载地址:http://ppcq.baihongyu.com/

你可能感兴趣的文章
Node-RED中使用range范围节点实现从一个范围对应至另一个范围
查看>>
Node-RED中实现HTML表单提交和获取提交的内容
查看>>
Node-RED中将CSV数据写入txt文件并从文件中读取解析数据
查看>>
Node-RED中建立TCP服务端和客户端
查看>>
Node-RED中建立Websocket客户端连接
查看>>
Node-RED中建立静态网页和动态网页内容
查看>>
Vue3+Element-ul学生管理系统(第二十二课)
查看>>
Node-RED中根据HTML文件建立Web网站
查看>>
Node-RED中解析高德地图天气api的json数据显示天气仪表盘
查看>>
Node-RED中连接Mysql数据库并实现增删改查的操作
查看>>
Node-RED中通过node-red-ui-webcam节点实现访问摄像头并截取照片预览
查看>>
Node-RED中配置周期性执行、指定时间阶段执行、指定时间执行事件
查看>>
Node-RED安装图形化节点dashboard实现订阅mqtt主题并在仪表盘中显示温度
查看>>
Node-RED怎样导出导入流程为json文件
查看>>
Node-RED订阅MQTT主题并调试数据
查看>>
Node-RED通过npm安装的方式对应卸载
查看>>
node-request模块
查看>>
node-static 任意文件读取漏洞复现(CVE-2023-26111)
查看>>
Node.js 8 中的 util.promisify的详解
查看>>
node.js debug在webstrom工具
查看>>