自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Ronaldo7_ZYB的博客

很好的博客

  • 博客(449)
  • 收藏
  • 关注

原创 IOI2020爆零游记

这里分享了肥猪的IOI2020的参赛经历

2020-09-21 19:18:13 927

原创 2020-09-03

近期文化课总结:语文:不管他英语:3500一天复习一单元,三天一篇新概念数学:完成均值不等式,自学导数,做函数蓝本物理:有空就做动能定理,放假补完机械能守恒地理:学完知识点,做完必刷题,简单所以多学点历史政治计数:回去补生物化学:化学重点复习...

2020-09-03 16:30:58 190 1

原创 那些年我犯过的天秀错误

强联通分量不看起点终点,直接拿111号点当起点,nnn号点当终点.比如说这是错的然后就对了,居然还有50分什么题啊

2020-05-29 19:03:24 324

原创 CSP-S 2019 : 退役记

Day\mathrm{Day}Day 好久前差点初赛没过QAQ…已经死了一回了Day0\mathrm{Day} 0Day0敲了一堆模板,事实证明是没有任何卵用的一个也没有考。还经常写错。考前续命了一波概率期望And差分约束,同样一个都有没有考。复习什么什么就不考心态很平和,不是太过于紧张。Day1\mathrm{Day1}Day1五点多就起了,睡的很好完全不紧张;在垃圾文渊排厕...

2019-11-17 17:05:02 460 7

原创 【竞赛技巧】OI竞赛常见错误

NOIP每一次都会有学生应为各种原因丢分,在此,我总结了一些常见的错误:1.打表不删除2.不开longlong3.文件名打错4.使用longlong,输出没有打lld5.负数下标6.变量重名7.审题8.数据规模看错导致数组开小越界(或者实际所需空间大于题意上的空间)9.变量,数组不赋初值10.没有去掉或没有加freopen11.c++编译inline后没有加类型12....

2018-11-10 09:29:41 976

原创 C语言文件学习

(10)打开文件:fopen(“文件名”,“操作”):r只写w只读w+读写r+读写a追加a+读写追加(r打开文本文件w建立新文本文件)(14)fgets用法:fgets(s,n,fp),最多读n-1个字符,结尾自动添加\0,换行符保留EOF不保留,(24)用fseek函数可以改变文件的位置指针,从而实现对文件的顺序读写和随机读写。(4)C语言的源程序是文本文件,目标文件和可执行文件是二进制文件(包含机器代码)(17)指针移动控制函数:fseek(fp,文件偏移量,起始位置0/1/2)

2025-01-03 10:13:11 237

原创 指针学习-

(9)对于字符数组sa,若要改变字符串,只能改变数组元素的内容,如:strcpy(sa,“Hello”);(22)返回指针的函数一般都返回主调函数或静态存储区中变量的地址,不能返回函数内部定义的自动变量的地址;(20)int main(int argc,char *argv[])其中argc是命令和命令参数的个数,argv[0]指向命令,argv[1…(23)定义指向函数的指针:int(*fun)(int,int)函数指针为fun,指向类型为int且有两个整形参数的函数;**(a+1)使第一行首元素的值。

2024-12-27 01:19:23 920

原创 C语言小测复习

15.switch语句如果遇到满足的,后面会全部执行下去,知道遇到break,如果default放前面则不执行。18.switch语句在default若default在中间,在无break的情况下会一直执行下面的语句。17.switch语句中不能出现两句话的case后的数值相同的情况。10.运行完sum的值是10,sum=0也太阴险了。1.C程序中定义的变量,代表内存中的一个存储单元。5.sum的值不是0.75,因为1/i不是小数。6.sum的值不是小数,注意变量的定义。9.语句1和语句2只运行了1次。

2024-10-10 17:56:41 442 1

原创 『并查集扩展域』CF776D The Door Problem

Problem\mathrm{Problem}ProblemFirst line of input contains two integers nnn and mmm ( 2≤n≤1052\le n\le 10^{5}2≤n≤105 , 2≤m≤1052\le m\le 10^{5}2≤m≤105 ) — the number of rooms and the number of switches.Next line contains nnn space-separated integers r1,r2

2020-11-30 20:12:15 482

原创 『动态规划·差分』队列

Problem\mathrm{Problem}ProblemSolution\mathrm{Solution}Solution首先考虑第一小问,问题转化为:每一行的问题互相独立。令cj=ai,j−a1,jc_j=a_{i,j}-a_{1,j}cj​=ai,j​−a1,j​,求将所有 cjc_jcj​ 变成一个数字的方案数。考虑第二小问,问题转化为:固定每一列的第一个数字,并且保证这个数大于零且单调递增的情况下,将每一列的cic_ici​固定成一个数字。我们考虑DP来限制:设fi,jf

2020-11-30 19:26:53 620

原创 『曼哈顿距离转切比雪夫距离·树状数组·扫描线』航空基地Airbase

Problem\mathrm{Problem}ProblemSolution\mathrm{Solution}Solution我们考虑将曼哈顿距离转化为切比雪夫具体:p(x,y)→p′(x+y,x−y)p(x,y)→p'(x+y,x-y)p(x,y)→p′(x+y,x−y)我们要求∣x1−x2∣+∣y1−y2∣≤d|x_1-x_2|+|y_1-y_2|\le d∣x1​−x2​∣+∣y1​−y2​∣≤d,相当于要求(x2,y2)(x_2,y_2)(x2​,y2​)在以下四个边界点的菱形内。(x−d

2020-11-30 19:13:50 489

原创 zyb的精准押题2

一道性质相关的多维最优化DP。一道奇奇怪怪的简单结论题。一道一看就不可做的猥琐数学题。一道可爱的树上计数问题。

2020-11-24 17:53:28 237

原创 『旋转体积背包』sop

Problem\mathrm{Problem}ProblemSolution\mathrm{Solution}Solution前置芝士:求解 ∑ai=N\sum a_i=N∑ai​=N 的方案数我们考虑DP,设 fi,jf_{i,j}fi,j​ 表示和为 iii ,数字个数为 jjj 的方案数。我们需要让它你能重复,因此我们的转移必须从小到大或从大到小来转移。我们考虑从大到小转移,那么若当前的最小数字不是1,我们可以考虑每一个数字都减1,对应的方案数是 fi−j,jf_{i-j,j}fi−j,

2020-11-11 20:18:45 286

原创 zyb的精准押题

这次考试 :有一道图论(最短路、MST、topsort)中的一个有一个DP(区间、树形)有一个奇奇怪怪的贪心还有一个组合数学,模数是998244353

2020-11-06 08:42:03 301

原创 小周猪猪De算法模板

1. 图论算法1.1 tarjan算法1.1.1 割点算法#include <bits/stdc++.h>using namespace std;const int N = 2e5;int n, cnt, root, m, res;int low[N], dfn[N], cut[N];vector < int > a[N];int read(void){ int s = 0, w = 0; char c = getchar(); while (!isdi

2020-11-05 13:51:34 290

原创 『最短路·裴蜀定理』CF510D Fox And Jumping

Problem\mathrm{Problem}Problem给出 nnn 张卡片,分别有 lil_ili​ 和 cic_ici​。在一条无限长的纸带上,你可以选择花 cic_ici​ 的钱来购买卡片 iii,从此以后可以向左或向右跳 lil_ili​ 个单位。问你至少花多少元钱才能够跳到纸带上全部位置。若不行,输出 −1-1−1。Solution\mathrm{Solution}Solution若对于数字 aaa 和数字 bbb ,根据裴蜀定理,方程ax+by=c(gcd(a,b)∣c)ax+b

2020-11-03 10:04:01 286

原创 『博弈』卡其脱离太

Problem\mathrm{Problem}Problem题意简述:有 nnn 堆石子,第 iii 堆石子有 aia_iai​ 个。两人轮流取石子,每人一轮只能取一个石子,且不能取对手刚取过的那堆石子中的石子,无法取的一方失败,两方采取最优策略,问谁会获胜。Solution\mathrm{Solution}Solution若存在max⁡ai>0.5∑ai\max_{a_i} > 0.5\sum a_imaxai​​>0.5∑ai​,则先手必胜。我们考虑不存在上述情况的答案。当

2020-11-01 16:33:04 263

原创 『树的直径变形』伐木工人

Problem\mathrm{Problem}ProblemSolution\mathrm{Solution}Solution这道题转化为在树上找到一条路径,使得去掉路径后其它连通块 ≥k\ge k≥k 的数量最大。如果这条链的两端具有祖先关系,那么我们可以直接用树形DP来解决。设 fif_ifi​ 表示节点 iii 延展下去的某一条路径中,贡献的最大值。fi=max⁡{fy−[sizey≥K]+∑t∈son(x)t≠y[sizey≥K]}f_i=\max \{ f_y - [\mat

2020-10-19 20:40:33 404

原创 蔡勒公式关于日期的计算

公式内容计算 yyy 年 mmm 月 ddd 日是星期几。设为星期 www (星期天则 w=0w=0w=0)。d+2m+⌊3(m+1)5⌋+y+⌊y4⌋−y100d+2m+\lfloor \frac{3(m+1)}{5} \rfloor+y+\lfloor \frac{y}{4} \rfloor -\frac{y}{100}d+2m+⌊53(m+1)​⌋+y+⌊4y​⌋−100y​...

2020-10-07 21:41:51 341

原创 『数学期望』抛硬币

Problem\mathrm{Problem}ProblemSolution\mathrm{Solution}Solution设 fif_ifi​ 表示 iii 个硬币的期望步数,则有:fi=p(fi−1+1)+(1−p)(fi−1+fi+1)f_i={p(f_{i-1}+1)+(1-p)(f_{i-1}+f_i+1)}fi​=p(fi−1​+1)+(1−p)(fi−1​+fi​+1)则有:fi=∏i=1k1/pkf_i=\prod_{i=1}^{k} 1/p^kfi​=i=1∏k​1/pkC

2020-10-06 21:37:40 1365

原创 『树上逆序对』深度优先搜索

Problem\mathrm{Problem}ProblemSolution\mathrm{Solution}Solution对于一棵树,我们考虑新添加的边。显然添加的边只有祖先关系,如果没有祖先关系必然会从某一叉经过这条边,那么这条边会在Dfs的过程被遍历到、成为树边。对于存在祖先关系的边,若存在一条非树边,对于 www 是 vvv 的子节点,则必然有aw>ava_w>a_vaw​>av​。如下图所示:现在,我们就将问题转化为除根节点外,每个数的子树有几个节点比它大,这

2020-10-05 20:43:16 522

原创 『超简单的状压DP』小绿与小蓝-城堡

Problem\mathrm{Problem}ProblemSolution\mathrm{Solution}Solution只要对每一个经过的路径求最大的边权和就可以了,假设你已经知道的点集是什么。然后用状态 f[S][i]f[S][i]f[S][i] 表示经过的点集为 SSS,结尾的点为 iii 的边权最大值。答案为:∑x∈Sai/f[S][i]\sum_{x∈S}a_i/f[S][i]x∈S∑​ai​/f[S][i]Code\mathrm{Code}Code#include <

2020-10-05 11:08:33 422

原创 【第二十四届全国青少年信息学奥林匹克联赛】NOIP2018普及组初赛试题解析(C++语言)

第二十四届全国青少年信息学奥林匹克联赛普及组初赛试题解析与答案

2020-10-04 10:57:24 15112 12

原创 初赛De各种各样的知识点

C A C A C :A BB D D D BB C B A B√ × × × D C√ × D C B A× √ × √ D CB A C C A:AA C D A A B :D D ACAD是画图软件,BCD类似 选A选B。

2020-10-02 19:25:17 1692 1

原创 『并查集ST表』[SCOI2016]萌萌哒

Problem\mathrm{Problem}Problem一个长度为 nnn 的大数,用 S1S2S3⋯SnS_1S_2S_3 \cdots S_nS1​S2​S3​⋯Sn​表示,其中 SiS_iSi​ 表示数的第 iii 位, S1S_1S1​ 是数的最高位。告诉你一些限制条件,每个条件表示为四个数,l1,r1,l2,r2l_1,r_1,l_2,r_2l1​,r1​,l2​,r2​,即两个长度相同的区间,表示子串Sl1Sl1+1Sl1+2⋯Sr1S_{l_1}S_{l_1+1}S_{l_1+2} \c

2020-09-25 20:17:21 359

原创 『带修改莫队』数颜色

题目描述墨墨购买了一套N支彩色画笔(其中有些颜色可能相同),摆成一排,你需要回答墨墨的提问。墨墨会像你发布如下指令:111、 QQQ LLL RRR代表询问你从第LLL支画笔到第RRR支画笔中共有几种不同颜色的画笔。222、 RRR PPP ColColCol 把第PPP支画笔替换为颜色ColColCol。为了满足墨墨的要求,你知道你需要干什么了吗?题解如果没有修改操作,就是莫队的...

2020-09-23 20:38:06 293

原创 『贪心·二分答案』排序

Problem\mathrm{Problem}ProblemSolution\mathrm{Solution}Solution这道题有一个很神奇的性质:交换操作与操作顺序无关。这意味着,我们形如 ababab...ababab...ababab... 的操作顺序可以改变成形如 aaabbb...aaabbb...aaabbb... 的顺序。考虑证明:若有交换操作 (a,b)(a,b)(a,b) 和 (c,d) (a<b,c<d)(c,d)\ (a<b,c<d)(

2020-09-22 21:39:02 447

原创 『贪心』BZOJ2034 [2009国家集训队]最大收益

Problem\mathrm{Problem}Problem给出 NNN 件单位时间任务,对于第 iii 件任务,如果要完成该任务,需要占用 [Si,Ti][S_i, T_i][Si​,Ti​] 间的某个时刻,且完成后会有 ViV_iVi​ 的收益。求最大收益。N≤5000,1≤Si≤Ti≤108,1≤Vi≤108。N≤5000,1 ≤ S_i ≤ T_i ≤ 10^8,1 ≤ V_i ≤ 10^8。N≤5000,1≤Si​≤Ti​≤108,1≤Vi​≤108。澄清:一个时刻只能做一件任务,做一个任务

2020-09-22 10:06:27 288

原创 『期望·贪心』CF605E Intergalaxy Trips

Problem\mathrm{Problem}Problemnnn 个点的有向完全图。i→ji \to ji→j 的边每天出现的概率均为 pi,jp_{i,j}pi,j​,若 i=ji = ji=j,有 pi,j=1p_{i,j} = 1pi,j​=1。每天选择一条存在的出边走过去。求最优策略下从 111 到 nnn 的期望天数。n≤103n \le 10^3n≤103。Solution\mathrm{Solution}Solution搞了一天的期望神题我们设 ExE_xEx​ 表示节

2020-09-21 19:01:38 227

原创 啦啦啦

不行啦不行啦噜噜噜啦啦啦

2020-09-21 16:21:34 125

原创 『容斥』51nod 1407 与与与与

Problem\mathrm{Problem}ProblemSolution\mathrm{Solution}Solution这道题的方向不是O(n)O(n)O(n),而是 O(v)O(v)O(v)。我们发现答案为:全集 −and-\mathrm{and}−and有至少 111 位 000 的 +and+\mathrm{and}+and 后有至少 222 位 000 的…因此我们可以根据一个数字 and\mathrm{and}and 操作后的位数来确定容斥系数。考虑 and\mathrm{an

2020-09-19 21:29:37 204

原创 『缩点·树的直径』CF734E Anton and Tree

Problem\mathrm{Problem}Problem给一棵n(n≤200000)n(n\le 200000)n(n≤200000)个节点的树,每个点为黑色或白色。一次操作可以使一个相同颜色的连通块变成另一种颜色。求使整棵树变成一种颜色的最少操作数。Solution\mathrm{Solution}Solution使用并查集缩点,使得任意相邻的两点颜色都不一样。可以证明,从树的直径的终点开始染色一定是最优的。其中 L3L_3L3​ 是直径上的最后一段,显然有L1,2≤L3L_{1,2

2020-09-18 16:25:26 167

原创 『边双连通分量·树上差分』CF555E Case of Computer Network

Problem\mathrm{Problem}Problem给定一张 nnn 个点 mmm 条边的无向图。给定 qqq 组有向点对 (s,t)(s, t)(s,t)。询问是否存在使得所有 sss 都能到达 ttt 的无向图中每条边的定向方案。n,m,q≤2×105n,m,q \le 2 \times 10^5n,m,q≤2×105。Solution\mathrm{Solution}Solution如果形态是一棵树:我们可以对每一条路径进行两个属性的差分:那么某一个边同时

2020-09-17 20:28:28 310

原创 『二分·贪心』打字机

Problem\mathrm{Problem}ProblemSolution\mathrm{Solution}Solution怀疑是CF题,因为题目真的太优美了首先我们需要观察到一个性质:栈中的元素序列一定形如 ABCABCA...\mathrm{ABCABCA...}ABCABCA... 的形式。我们令添加为 222 贡献,弹出为 000 贡献。假设前面出现为 ABABAB,你需要在栈中添加元素 AAA :一定是把 BBB 弹出。若直接添加贡献是 333 ,若删掉 BBB 在做贡献一定 ≤

2020-09-17 10:00:23 125

原创 『trie·贪心』CF888G Xor-MST

Problem\mathrm{Problem}Problem给定 nnn 个结点的无向完全图。每个点有一个点权为 aia_iai​。连接 iii 号结点和 jjj 号结点的边的边权为 ai⊕aja_i\oplus a_jai​⊕aj​。求这个图的 MST 的权值。1≤n≤2×1051\le n\le 2\times 10^51≤n≤2×105,0≤ai≤2300\le a_i \le 2^{30}0≤ai​≤230。Solution\mathrm{Solution}Solution这道题首

2020-09-16 14:47:27 213 1

原创 『算法略解』最小生成树的Boruvka算法

Problem\mathrm{Problem}Problem如题,给出一个无向图,求出最小生成树,如果该图不连通,则输出 orz。Solution\mathrm{Solution}Solution假设图中有若干个连通块:我们每一次都枚举每一个连通块,找到与该连通块相连的最小边。完成上述操作以后枚举每一个连通块,合并最小边两端且包含该连通块的节点。初始地,每一个节点都是一个连通块。这一步是找与每一个连通块相连的最小值。这一步是合并。Code\mathrm{Code}Code#i

2020-09-15 21:39:06 601 5

原创 『贪心·动态规划』有丝分裂

Code\mathrm{Code}Code#include <bits/stdc++.h>using namespace std;const int N = 10000;int n, res, m1, m2;int a[N], f[N], g[N], u[N], v[N], res1[N], res2[N];int read(void){ int s = 0, w = 0; char c = getchar(); while (!isdigit(c)) w |= c ==

2020-09-05 21:44:52 278

原创 『博弈·逆序对』BZOJ4975 区间翻转

Problem\mathrm{Problem}Problem小Q和tangjz正在一个长度为n的序列 a1,a2,...,ana_1,a_2,...,a_na1​,a2​,...,an​ 上玩一个有趣的关于区间翻转的游戏。小Q和tangjz轮流行动,小Q先手。每次行动方玩家需要选择一个长度为 4x+24x+24x+2 或 4x+34x+34x+3 的区间[l,r](1≤l≤r≤n)[l,r](1\le l\le r\le n)[l,r](1≤l≤r≤n),其中xxx是该玩家自行选择的非负整数,然后将al

2020-09-05 20:24:50 962

原创 『期望』CF846F Random Query

Problem\mathrm{Problem}Problem给定长度为 nnn 的序列 aaa。您要随机地选取两个数 l,r∈[1,n]l,r\in [1,n]l,r∈[1,n],如果 l>rl>rl>r,则交换 l,rl,rl,r。求 al∼ara_l\sim a_ral​∼ar​ 中不同数字个数的期望。1≤n≤1061\le n\le 10^61≤n≤106,1≤ai≤1061\le a_i\le 10^61≤ai​≤106。答案被认为是正确的当且仅当 min⁡(∣x−y∣,∣x

2020-09-05 16:28:34 246

原创 『容斥·状压』CF449D Jzzhu and Numbers

Problem\mathrm{Problem}Problem给出一个长度为n的序列a1,a2...ana_1,a_2...a_na1​,a2​...an​。求构造出一个序列i1≤i2≤...≤ik(1≤k≤n)i_1 \le i_2 \le ... \le i_k(1\le{k}\le{n})i1​≤i2​≤...≤ik​(1≤k≤n)使得ai1 and ai2 and ... and aik=0a_{i_1}\mathrm{\ and\ }a

2020-09-05 15:47:08 351

空空如也

空空如也

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

TA关注的人

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