自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 收藏
  • 关注

原创 已转博客园https://www.cnblogs.com/sjzyh/

博客园 My Blog

2021-05-29 19:36:36 109

原创 [HNOI2001] 求正整数

题面求正整数题解rqy dalaorqy\ dalaorqy dalao 学姐的题解 + 我自己的理解。根据算数基本定理。一个数可以被唯一分解为:p1k1∗p2k2∗…pnknp_{1} ^{k_1} * p_{2} ^{k_2} * …p_{n} ^{k_n}p1k1​​∗p2k2​​∗…pnkn​​根据组合的知识,它的因子个数显然等于:(k1+1)∗(k2+1)∗…∗(kn+1)(k_1 + 1) * (k_2 + 1) * … *(k_n + 1)(k1​+1)∗(

2021-05-27 22:08:08 141

原创 [BJWC2010] 严格次小生成树

题面严格次小生成树题解小蓝书 + 我自己的补充做法题意很好理解吧。设最小生成树的边权之和为 sumsumsum。我们要找严格次小生成树,就是要找到这样的一条非最小生成树上的边,满足:将最小生成树上的某条边替换成这条边后,树依然联通。这条边与被替换边的权值之差最小,且大于 000。所以我们进行如下操作:选择一条非最小生成树上的边 (x,y,z)(x,y,z)(x,y,z)。将它加入树中,显然会形成一个环。由 KruskalKruskalKruskal 的证明过程我们可以得到,z

2021-05-26 21:47:17 92

原创 [LNOI2014] LCA

题面LCA题解题意很好理解首先暴力的方法肯定是直接枚举求两个点的 LCALCALCA 的深度,复杂度是 O(mnlogn)O(mnlogn)O(mnlogn)。考虑对暴力的优化,用 tarjantarjantarjan 离线求,然后 O(1)O(1)O(1) 查。但是时空间都不允许。...

2021-05-25 18:12:34 89

原创 [APIO 2021] 献给和我一样不甘心的同学

先说说我比赛的经历客观来说,这次比赛的确有很多让人不如意的地方。不管是评测网站,还是出题人和验题人,都是造成这场比赛不公平的原因。当我在机房打开网站,点了开始之后,我的电脑就蓝屏了,重开比较慢,没办法我只好换了另一台。当我在另一台电脑上输入网址之后,连登陆界面就加载了十几分钟,登陆进去又花了很多时间。到我进去以后,比赛已经过去了接近四十分钟。可进去却连题面都加载不了,连同上述的这段时间我只好在手机上看同学发在QQ群里的PPT。因为加载不出提交界面,我只好先把能拿的3道题的暴力打好想等会一起交上去。

2021-05-24 17:59:24 334

原创 【机房练习赛 5.15】奇袭 && CF526F Pudding Monsters

题面Pudding Monsters问题描述由于各种原因,桐人现在被困在 UnderWorldUnder WorldUnderWorld(以下简称 UWUWUW)中,而 UWUWUW 马上要迎来最终的压力测试——魔界入侵。唯一一个神一般存在的 AdministratorAdministratorAdministrator 被消灭了,靠原本的整合骑士的力量是远远不够的。所以爱丽丝动员了 UWUWUW 全体人民,与整合骑士一起抗击魔族。在 UWUWUW 的驻地可以隐约看见魔族军队的大本营。整合骑士们

2021-05-18 18:48:51 144

原创 [NOIP2015 提高组] 运输计划 lca 正确做法

题面运输计划题解因为在写树剖的时候写崩了,所以这里提供一个 lcalcalca 的做法。虽然有人说 lcalcalca 会被卡,但是我觉得用 tarjantarjantarjan 写出来复杂度也不假。(复杂度分析在下文)前言读完题不难发现,其实我们要清空权值的边就是在清空它之后,能把最长的路径降到最小。最大的最小我们想到了什么?自然而然就能稳一波二分答案。所以就可以我们二分在清空后最长的路径的长度。二分答案的具体步骤于是现在我们就需要写一个 checkcheckcheck 函数来判断答案是否

2021-05-12 21:51:56 78

原创 [HAOI2012] 道路

题面道路题解题意对于每条道路,求出有多少条最短路经过它。解析先看看数据范围,不算大。所以我们分别以每个点为起点,用 SPFASPFASPFA 求出每个点到源点的最短距离。不难发现对于边 (u,v,w)(u,v,w)(u,v,w),如果 dis[u]+w==dis[v]dis[u] + w == dis[v]dis[u]+w==dis[v],那么这条边一定在源点到 vvv 的最短路上。而不满足这个条件的边,显然对答案毫无贡献,所以我们可以在跑完最短路后忽略不满足条件的这些边。这样原图就变成

2021-05-09 21:48:55 120

原创 [JSOI2008] 小店购物

题面小店购物题解这道题建边方式很套路。定义有向边 (u,v,w)(u,v,w)(u,v,w) 表示买了 uuu 之后,能以边权 www 的价格买 vvv 。对于原价的物品,建一个超级源点,分别连接每个物品。对于特价的物品,根据以上的定义,连接两个有依赖关系的物品。最后就会发现,要买完所有的物品,其实就是求这幅有向图的最小树形图。根据贪心的思想,因为每个物品都要买 (对于不用买的物品,我们可以看做是以 000 的价格买入),而以能以它的最低价格买就以它的最低价格买肯定是最优的 (即 uuu 是要

2021-05-07 21:30:58 101

原创 【机房练习赛 5.5】 atm 自动取款机

题面题目描述小沈阳在小品里说过:“人生最痛苦的事情是人死了,钱还没花了”。于是小宋(80 岁)决定要将所有的储蓄从ATM 机中取出花光。小宋忘记了她有多少存款(银行卡密码她是记得的2333),这个奇怪的ATM 不支持查询存款余额功能。小宋知道她存款的唯一信息是存款上限是 KKK元,这意味着小宋的存款 xxx 是 000 到 KKK 之间的随机整数(包括 KKK)。每次小宋都可以尝试从ATM 中拿出一些钱。如果她要取的y 元钱不大于她的存款,ATM 将立即给小宋 yyy 元。但如果她的存款小于 y

2021-05-06 22:09:17 171

原创 【机房模拟赛 5.5】escape 大逃亡

题面给出数字 N(1≤N≤10000),X(1≤X≤1000),Y(1≤Y≤1000N(1 \leq N \leq 10000),X(1 \leq X \leq 1000),Y(1 \leq Y \leq 1000N(1≤N≤10000),X(1≤X≤1000),Y(1≤Y≤1000)代表有 NNN 个敌人分布在一个 XXX 行 YYY 列的矩阵上,矩形的行号从 000 到 X−1X-1X−1,列号从 000 到 Y−1Y-1Y−1。再给出四个数字 x1,y1,x2,y2x_1,y_1,x_2,y_2x1

2021-05-06 21:32:22 71

原创 [APIO2010] 巡逻

题面巡逻题目大意在一颗边长为 111 的树上,添加一条或两条长度为 111 的路径,使遍历完整幅图,且经过添加的路径正好一次,并回到起点的路径长度最短,并输出这个长度。题解不加的情况根据深搜的特点,每条路径必定会经过 222 次,即第一次访问和回溯。所以在不加的时候,最短路径一定是 2∗(n−1)2 * (n - 1)2∗(n−1)。加一条边的情况因为不加时每条边都要经过两次,加了边之后的好处就是,可以不走原路返回,改为直接返回某一个点,于是要求最短的路径,就是要让节省的路径长度最长。而树中

2021-05-04 08:12:01 177

原创 2-SAT 模板题

题面2-SAT模板题题目描述有 nnn 个布尔变量 x1x_1x1​ ~ xnx_nxn​,满足 mmm 个形如 xi=true/falsex_i=true/falsexi​=true/false 或 xj=true/falsex_j=true/falsexj​=true/false 的条件 。输入第一行两个整数 nnn 和 mmm,意义如题面所述。接下来的 mmm 行,每行四个整数,x,a,y,bx,a,y,bx,a,y,b (KaTeX parse error: Expected '\righ

2021-05-02 22:02:46 91

原创 [Violet]蒲公英 分块 + 二分查找 详解

题面蒲公英解析前言一道从黑掉到紫的阴间分块题。。。显然是一道求静态区间众数题。因为区间众数不具有可加性,用线段树,树状数组的数据结构并不好维护,在加上本题的数据范围和两秒的限制,所以本题可以分块。暴力做法瞎搞能拿70 ~ 80 分,这里就不赘述了。分块做法正常分块,不过维护的信息变为从 块i块_i块i​ ~ 块j块_j块j​ 的众数是哪个,我们用 f[i][j]f[i][j]f[i][j] 来表示。假设已经知道这个信息怎么维护了,那么对于每个询问 LLL ~ RRR ,答案只会有三种情

2021-05-02 20:11:51 89

原创 P3530 [POI2012]FES-Festival

题面P3530 [POI2012]FES-Festival题意在满足给定的条件下,求出赛车手的成绩可能的取值有多少种。解析差分约束不等式关系自然联想到差分约束。对于第一种不等式因为给定了相差的值,所以建双向边:dis[i]≤dis[j]−1dis[i] \leq dis[j] - 1dis[i]≤dis[j]−1dis[j]≤dis[i]+1dis[j] \leq dis[i] + 1dis[j]≤dis[i]+1通过两个不等式,锁定 i,ji,ji,j 之间的差值为 111。对于第

2021-04-29 21:47:23 106

原创 高斯 & 约旦 消元模板~清新码风

题面模板题#include<cstdio>#include<algorithm>#include<cmath>using namespace std;const int N = 105;double a[N][N]; int n;bool gauss() { for(int i = 1; i <= n; i++) { int maxn = i; for(int j = i + 1; j <= n; j++) if(fabs(a[

2021-04-29 20:19:48 105

原创 HAOI 2010 软件安装

题面软件安装题意一个裸的树形背包问题解析缩点从某个物品依赖的物品向这个物品连边,得到一个有向图。这时我们会发现,在一个强连通分量里,如果想要有价值的话,必须全部选,根据贪心的思想,对于一个强联通分量,要么全部选,要么全部不选,所以我们可以把这幅有向图进行缩点。因为每个物品只有一个依赖关系,所以每个强连通分量最多只会有一个父节点,也就是说,缩点后我们得到了森林。为了方便进行树形背包,我们可以建一个根节点 000 号节点,把森林转化为一棵树。背包状态树形背包的老套路:dp[i][j]d

2021-04-29 19:36:06 108

原创 [POI2008]BLO-Blockade

题面[POI2008]BLO-Blockade题解深度优先遍历这幅图。设 siz[x]siz[x]siz[x] 表示在搜索树中,以 xxx 为根的子树的大小。注意不连通的关系是双向的,所以(x,y),(y,x)(x,y),(y,x)(x,y),(y,x)算两次。对于当前点 xxx,有两种情况:xxx 是割点那么删去 xxx 之后会有如下的点不连通:xxx 在搜索树上的子树中所有的节点与其它的点:∑k=1tsiz[k]∗(n−siz[k])(t为子节点总数)\sum_{k = 1}^{

2021-04-22 21:46:23 98

原创 UVA515 King(差分约束)

这是一篇良心的题解这道题不打开标签还是能看出是差分约束的,但是和板子的差分约束有点不同,它的不等式中未知项不止两个,但是,这些未知项都是连续的,自然我们不难想到用前缀和的形式来表示。关于翻译错误仔细看一下原文的题面是能够看出来的,应该是:ax+ax+1+…+ax+ya_x + a_{x + 1} + … + a_{x + y}ax​+ax+1​+…+ax+y​最长路判正环的SPFA以 gtgtgt 为例:所以我们可以把它转化为:sumx+y−sumx−1>csum_{x + y} -

2021-04-22 14:52:10 74

原创 21.3.12 数论总结(一) 质数&因数

质数欧拉筛 O(n)O(n)O(n)int prime[N],tot = 0;bool notprime[N];void get_prime() { for(int i = 2; i <= N ;i++) { if(!notprime[i]) prime[++tot] = i; for(int j = 1; j <= tot && i * prime[j] <= N; j++) { notprime[i * prime[j]] = true;

2021-03-19 20:46:50 197

原创 21.3.2 树状数组 总结

树状数组特点树状数组 c[x]c[x]c[x] 维护序列 aaa 的区间 [x−lowbit(x)+1,x][x - lowbit(x) + 1 , x][x−lowbit(x)+1,x]lowbit(x) = x & -x;性质 (摘自小蓝书)c[x]c[x]c[x]保存以它为根的子树中所有叶节点的信息和c[x]c[x]c[x]的儿子节点(含它本身)的个数等于 lowbit(x)lowbit(x)lowbit(x) 后的位数。除根节点外,每个内部节点 c[x]c[x]c[x]

2021-03-02 19:48:48 138

原创 21.2.22 T2 多米诺骨牌 真·详解

题面Description有一个 r∗cr * cr∗c 的矩形,和一些 1∗21*21∗2 的多米诺骨牌。如果想用这些骨牌刚好填满这个矩形,使得没有位置是空出来的,多米诺骨牌也没有重叠。请问有多少种方法刚好填满这个矩形呢?一种可能的填法如下图:设定矩形是有方向的,旋转之后相同和相互对称的填法应当计算为不同的填法。Input一行两个数 r,cr,cr,c。表示矩阵的列数和行数。Output一个整数,表示填法总数。Sample Input2 11Sample Output144数

2021-02-22 23:55:47 352 8

原创 21.2.21 T3 粉刷匠 log P4158 && SCOI 2009 总结

题面Description“我是一个粉刷匠,粉刷本领强~~~”粉刷匠qjx 哼着小曲高兴地开始了一天的工作,这天qjx 有 nnn 条木板需要被粉刷。每条木板被分成 mmm 个格子,每个格子要被刷成红色或蓝色。qjx 每次粉刷,只能选择一条木板上一段连续的格子,然后涂上一种颜色,已知每个格子最多只能被粉刷一次。如果qjx 只能粉刷 ttt 次,她最多能正确粉刷多少格子。注意,一个格子如果未被粉刷或被粉刷成错误颜色,就算粉刷错误。Input第一行三个数n,m,t;接下来n 行,每行一个长度

2021-02-22 08:48:04 137 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除