首页 > 其他分享 >2024.7.19 近期练习

2024.7.19 近期练习

时间:2024-07-19 16:53:31浏览次数:12  
标签:那么 gcd 2024.7 19 dfrac sum 练习 枚举 我们

CF623B

考虑枚举 \(\gcd=d\),我们先假设没有 \(a\) 操作,所有数都需要 \(b\) 操作来实现。
那么,形如 \(kd\pm 1\) 的数需要代价为 \(b\),\(kd\) 的数无需代价,然而可能存在没法通过 \(b\) 操作被 \(d\) 整除的数。
若没有上述数呢,我们现在加入 \(a\) 操作,这是一个最大子段和问题,求出一个子段使得省去代价最多。
如果有上述数,那么必存在 \([l,r]\) 是必选的,那么我们左右找省去代价最多的前后缀即可。
然而我们还要枚举 \(\gcd\),观察到 \(A_1,A_n\) 有一个必选,所以 \(d\) 很少。于是我们分解质因数出来即可。

CF965E

先把字典树建出,考虑从叶子节点开始往上推。当一个节点合并其儿子节点时:
若该节点没有结尾字符串,可以把儿子中最长的字符串改成这个点结尾的字符串。
那么我们启发式合并即可。

CF653E

如果有解那么去掉 \(1\) 后连通块个数不超过 \(k\),并且 \(1\) 到这些连通块都有边。
我们用 bfs 找连通块,同时维护一个 set,代表还没去过的点,如果当前到 \(u\),那么就在 set 里找 \(v\)。
因为只有 \(m\) 条边被删去,所以 \(u\to v\) 最多匹配失败 \(m\) 次,复杂度是 \(O((n+m)\log n)\)。

CF1139D

这是个经典的期望模型,不妨设 \(f_i\) 表示 \(\gcd =i\) 时到 \(1\) 要多少步,\(f_1=0\)。
我们现在看 \(f_y\) 怎么转移到 \(f_x\),一定满足 \(y|x\),枚举 \(x\) 下一位是什么,
可以列出 \(f_x=1+\dfrac{1}{m}\sum_{i=1}^m f_{gcd(x,i)}\),除去 \(\gcd(x,i)=x\) 的情况,\(\dfrac{m-(m/x)}{m}f_x=1+\dfrac{1}{m}\sum_{i \not |x} f_{gcd(x,i)}\)
\(f_x=\dfrac{m+\sum_{i \not |x} f_{gcd(x,i)}}{m-(m/x)}\),枚举 \(\gcd\),我们即求有多少个 \(i\in[1,m]\) 使得 \(\gcd(x,i)=y\)。
即数多少个 \(i\in[i,m/y]\),使得 \(\gcd(x/y,i)=1\)。
设 \(n=m/y\),\(k=x/y\),考虑莫反,即求 \(\sum_{i=1}^n\sum_{d|i,k}\mu(d)=\sum_{d|k}\mu(d)\cdot n/d\).
我们可以预处理约数,总的复杂度约为 \(O(n\sqrt n)\)。

CF1088E

我们观察到,如果 \(x_i=x_j\),那么 \(i,j\) 的邻居指定相同(包括本身)。
所以我们发现,邻居相同的,我们可以直接构造他们为相同的权值。
那么,我们把所有邻居相同的缩点出来,形成一张新图,那么图上相邻的两点权值不同。
所以有度数 \(\ge 3\) 的点肯定无解,有环肯定无解,所以最后就是一个链了,顺序染色即可。
可以用哈希来判断邻居集合。

标签:那么,gcd,2024.7,19,dfrac,sum,练习,枚举,我们
From: https://www.cnblogs.com/Simon-Gao/p/18311803

相关文章

  • 用pandas查看牛客网用户数据(python练习)
    现有一个Nowcoder.csv文件,它记录了牛客网的部分用户数据,包含如下字段(字段与字段之间以逗号间隔):Nowcoder_ID:用户IDLevel:等级Achievement_value:成就值Num_of_exercise:刷题量Graduate_year:毕业年份Language:常用语言你可以使用pandas打开文件,偷偷看一下里面的内容,请输出你看......
  • Zabbix监控 MS SqlServer2019
    Zabbix监控MSSqlServer2019 环境:Zabbix7.0LTS,sqlserver2019 在mssqlserver的服务器上安装好agent2和插件:zabbix_agent2_plugins-7.0.0-windows-amd64.msi,其中有mssql的必要插件.zabbix_agent2-7.0.0-windows-amd64-openssl.msi,zabbix新一代收集数据的客户......
  • 0197-封装相机逻辑
    环境Time2022-11-16WSL-Ubuntu22.04Rust1.65.0前言说明参考:https://raytracing.github.io/books/RayTracingInOneWeekend.html目标重构相机部分逻辑,将其单独提到一个类中,保持逻辑不变。camera.rsusesuper::ray::Ray;usesuper::vector3::{Point3,Vector3};pub......
  • 0198-增加抗锯齿
    环境Time2022-11-16WSL-Ubuntu22.04Rust1.65.0前言说明参考:https://raytracing.github.io/books/RayTracingInOneWeekend.html目标之前生成的版本,在交界处,能很明显看到锯齿,增加采样和抗锯齿。颜色显示函数pubfnformat_str(&self,samples:f64)->String{......
  • 0199-漫反射和伽马校正
    环境Time2022-11-16WSL-Ubuntu22.04Rust1.65.0前言说明参考:https://raytracing.github.io/books/RayTracingInOneWeekend.html目标对物体上的光线进行漫反射,然后增加伽马校正。颜色显示函数pubfnformat_str(&self,samples:f64)->String{letir=(256.......
  • c语言(7.19)
    今天学习了常见函数(math,time)常见函数(math)#include<stdio.h>#include<math.h>intmain(){   doubleres1=pow(2,3);   printf("%lf\n",res1);   doubleres2=sqrt(8);   printf("%lf\n",res2);      doubleres3=ceil(12.3);  ......
  • 20240719-CentOS7 ftp服务器搭建与xftp连接
    在CentOS7上搭建ftp服务器,可以使用vsftpd守护进程。安装vsftpd:sudoyuminstall-yvsftpd启动并使vsftpd开机自启:sudosystemctlstartvsftpdsudosystemctlenablevsftpd配置vsftpd编辑配置文件/etc/vsftpd/vsftpd.conf,根据需要修改如下配置:anonymous_enable=NO#禁用......
  • 练习rsync实时同步(day09)
    安装inotify:[root@aa~]#yum-yinstallinotify-tools编写脚本:[root@aa~]#vimrsync.sh  修改执行权限:[root@aa~]#chmod700rsync.sh 另一台终端:[root@aa~]#rm-rf/app/studentweb/src/main/java/co/goho/yuanyu.studentweb/File4.java [root@aa~......
  • 2024.7.18模拟赛
    模拟赛困T1琪露诺的算数游戏小·大模拟,注意:负数向下取整可用右移或floor。优先级,注意有标记和无标记是不同的,可以用map初始化。解牌除标记后直接跳下一个人。区分\(D\)和\(DOUBLE\)。大模拟打的太少了这里这里这里!!!code#include<bits/stdc++.h>usingnamespac......
  • 【闲话】2024.7.18
    按照惯例,应当择良辰吉日写闲话。从上一篇5.19到今天两个月的时间大概是期末、分班、联考这样几个时间节点。首先是期末考试喜提化学60多分,不会原理和结构也顺带把有机带跑了,最后一道结构答题喜提2/14。最后名次是248,似乎也还可以接受,不过偏科非常严重。由于众所周知的原因......