- 博客(31)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 本人的博客园地址(大家可以多多访问鸭)
戳这里(其实博客都是一样的)欢迎大家多多访问,有问题可以私信或者评论,欢迎各位巨佬跟我一起讨论OI方面的东西
2020-08-14 21:02:40
204
原创 关于扩展欧几里得算法的一些拓展
关于扩展欧几里得的一些拓展建议了解扩展欧几里得算法后食用……裴蜀(贝祖)定理的证明裴蜀定理当且仅当gcda,b∣cgcd_{a,b}|cgcda,b∣c时,方程ax+by=cax+by=cax+by=c有解证明:必要性设gcda,b=pgcd_{a,b}=pgcda,b=p,则a=a′p,b=b′pa=a'p,b=b'pa=a′p,b=b′p,显然gcda′,b′=1gcd_{a',b'}=1gcda′,b′=1那么c=ax+by=a′px+b′py=p(a′x+b′y)c=ax+b
2022-05-03 19:34:53
247
原创 【NOIP2021 T2】数列 (sequence) 题解
【NOIP2021 T2】数列DescriptionInputOutput输出到文件 sequence.out 中。仅一行一个整数,表示所有合法序列的权值和对 998244353 取模的结果。Sample Input5 1 12 1Sample Output40【样例 2】见选手目录下的 sequence/sequence2.in 与 sequence/sequence2.ans。Solution观察题目,我们发现a[i]a[i]a[i]的顺序不同对答案的贡献是相同的,
2021-11-27 14:57:41
900
原创 【NOIP2016模拟7.8】Stree 题解
【NOIP2016模拟7.8】StreeDescription给出n个点,m条有权边,现对于每一条边,你需要回答出包含这条边的最小生成树的总边权值。Input第一行两个数n,m接下来m行i,j,k,表示i与j间有一条权值为k的边Outputm行答案Sample Input5 71 2 31 3 11 4 52 3 22 5 33 4 24 5 4Sample Output98118889Data Constraint30% n<=1000100%
2021-09-04 16:20:37
117
原创 P5782 [POI2001] 和平委员会 题解
P5782 [POI2001] 和平委员会题目传送门题意一共有2n2n2n个人,第2i−12i-12i−1和2i2i2i个人为一组(1≤i≤n)(1\le i \le n)(1≤i≤n),给出mmm组矛盾关系(x,y)(x,y)(x,y),表示第xxx和第yyy个人不能同时选,问有没有每组都选出一个人的方案,如果有就随便输出一种方案题解看到题目中矛盾关系,又要求我们构造方案,很容易想到 2−SAT2-SAT2−SAT我们考虑怎么进行连边根据 2−SAT2-SAT2−SAT 的思路,只有明确选择
2021-08-18 22:01:52
205
原创 【USACO 2021 US Open, Gold】United Cows of Farmer John 题解
【USACO 2021 US Open, Gold】United Cows of Farmer JohnDescriptionInputOutput输出可能的代表队的数量。Sample Input71 2 3 4 3 2 5Sample Output13Data Constraint题解仔细阅读题目,我们可以发现其实可以把题目转化一下假设我们以b[i]b[i]b[i]为队头的领队,在合法的情况下,这个队列是不能有其他等于b[i]b[i]b[i]的数的,也就是说,最多可以延伸到
2021-08-14 16:39:14
287
原创 【NOIP2016提高A组模拟9.9】Brothers 题解
【NOIP2016提高A组模拟9.9】BrothersDescription在遥远的西方有一个古老的王国,国王将他的王国分成了网格状,每一块称之为一个城市。在国王临死前,他将这些城市分给了自己的N个儿子(编号为0到N-1)。然而这N个王子的关系不是很好,0讨厌1,1讨厌2,2讨厌3……N-1讨厌0。在国王死后,这种不好的关系使得王子之间爆发了战争。战斗只会在相邻的两个城市之间爆发(共有一条边称之为相邻),并且只有当A讨厌B时,A才会对B发起战斗,结果必定是A获得这次战斗的胜利。当一方胜利后,他所进攻的
2021-08-13 20:11:36
125
原创 [BJWC2008]秦腾与教学评估 题解
[BJWC2008]秦腾与教学评估Description在秦腾进入北京大学学习的第一个学期,就不幸遇到了前所未有的教学评估。在教学评估期间,同学们被要求八点起床,十一点回宿舍睡觉,不 准旷课,上课不准迟到,上课不准睡觉……甚至连著名的北大三角地也在教学评估期间被以影响校容的理由被拆除。这些“变态”规定令习惯了自由自在随性生活学习的北大同学叫苦不迭。这一天又到了星期五,一大早就是秦腾最不喜欢的高等代数课。可是因为是教学评估时期,不能迟到,于是他在八点五分的 时候挣扎着爬出了宿舍,希望能赶快混进在八点钟
2021-08-11 22:07:29
125
原创 「JOI 2020 Final」奥运公交 题解
「JOI 2020 Final」奥运公交DescriptionInputOutputSample Input样例 1 输入:4 51 2 4 41 3 2 14 3 1 24 1 6 12 4 2 5样例 2 输入:4 101 2 4 41 2 4 41 3 2 11 3 2 14 3 1 24 3 1 24 1 6 14 1 6 12 4 2 52 4 2 5样例 3 输入:4 41 2 0 41 3 0 14 3 0 24 1 0 1样例
2021-07-21 22:07:25
291
原创 【SHTSC2014】概率充电器(charger) 题解
【SHTSC2014】概率充电器(charger)Description著名的电子产品品牌SHOI刚刚发布了引领世界潮流的下一代电子产品——概率充电器:“采用全新纳米级加工技术,实现元件与导线能否通电完全由真随机数决定!SHOI概率充电器,您生活不可或缺的必需品!能充上电吗?现在就试试看吧!”SHOI概率充电器由n-1条导线连通了n个充电元件。进行充电时,每条导线是否可以导电以概率决定,每一个充电元件自身是否直接进行充电也由概率决定。随后电能可以从直接充电的元件经过通电的导线使得其他充电元件进行间接
2021-07-19 21:53:07
402
原创 [JOI 2020 Final] 長いだけのネクタイ 题解
[JOI 2020 Final] 長いだけのネクタイDescriptionInputOutputSample Input样例 1 输入:34 3 7 62 6 4样例 2 输入:54 7 9 10 11 123 5 7 9 11Sample Output样例 1 输出:2 2 1 1样例 2 输出:4 4 3 2 2 2Data Constraint题解好不容易模拟赛有一道签到题首先可以显然证明,在拿掉一个领带后,将剩下的领带长度从大到小排序,把人本来戴着
2021-07-19 18:42:56
157
原创 【NOIP2013中秋节模拟】表白(love) 题解
【NOIP2013中秋节模拟】表白(love)Description鸡腿是CZYZ的著名DS,但是不想追妹子的DS不是好GFS,所以鸡腿想通过表白来达到他追到妹子的目的!虽然你对鸡腿很无语,但是故事的设定是你帮助鸡腿找到了妹子,所以现在你必须帮助鸡腿安排表白来实现故事的结局 !鸡腿想到了一个很高(sha)明(bi)的做法,那就是去找人来组成表白队伍来增强气势 !鸡腿有很多好基友来帮忙,鸡腿数了数一共有N个人。但是鸡腿觉得大家排成两队来比较好看,而且鸡腿经过计算,第一队N1个人,第二队N2个人是最佳的队
2021-07-15 07:46:37
230
1
原创 【GDOI2018 Day1】密码锁 题解
【GDOI2018 Day1】密码锁DescriptionInputOutputSample InputSample Input14 31 2 1 0Sample Input211 81 2 3 4 5 0 5 4 3 2 1Sample Input320 10030 91 15 72 61 41 10 37 98 41 94 80 26 96 10 88 59 5 84 14Sample OutputSample Output12Sample Output28S
2021-07-10 16:01:49
256
1
原创 【GDOI2014模拟】旅行 题解(水法)
【GDOI2014模拟】旅行Description从前有一位旅者,他想要游遍天下所有的景点。这一天他来到了一个神奇的王国:在这片土地上,有n个城市,从1到n进行编号。王国中有m条道路,第i条道路连接着两个城市ai,bi,由于年代久远,所有的道路都已经不能使用。如果要修复第i条道路,需要wi的时间。为了更好的旅行,旅者想要将某些道路修复,使得1号城市能够到达n号城市,2号城市能够到达n-1号城市…k号城市能够到达n-k+1号城市。为了满足他的要求,请问最少需要多少时间去修复道路。无解请输出-1。Inpu
2021-07-07 19:56:12
199
原创 【SCOI2013】摩托车交易 题解
【SCOI2013】摩托车交易Descriptionmzry1992 在打完吊针出院之后,买了辆新摩托车,开始了在周边城市的黄金运送生意。在mzry1992 生活的地方,城市之间是用双向高速公路连接的,另外,每条高速公路有一个载重上限,即在不考虑驾驶员和摩托车重量的情况下,如果所载货物的量超过某个值,则不能驶上该条高速公路。今年,mzry1992 一共收到了来自n个不同城市的n份定订单,每个订单要求卖出上限为一定量的黄金,或是要求买入上限为一定量的黄金。由于订单并不是同时发来的,为了维护生意上的名声
2021-07-06 20:19:22
2081
原创 【NOIP2013模拟】四叶草魔杖 题解
【NOIP2013模拟】四叶草魔杖Description魔杖护法Freda融合了四件武器,于是魔杖顶端缓缓地生出了一棵四叶草,四片叶子焕发着淡淡的七色光。圣剑护法rainbow取出了一个圆盘,圆盘上镶嵌着N颗宝石,编号为0~N-1。第i颗宝石的能量是Ai。如果Ai>0,表示这颗宝石能量过高,需要把Ai的能量传给其他宝石;如果Ai<0,表示这颗宝石的能量过低,需要从其他宝石处获取-Ai的能量。保证sigma(Ai)=0。只有当所有宝石的能量均相同时,把四叶草魔杖插入圆盘中央,才能开启超自然之界
2021-07-06 20:01:38
204
原创 【SHTSC2013】阶乘字符串 题解
【SHTSC2013】阶乘字符串Description给定一个由前n个小写字母组成的串S。串S是阶乘字符串当且仅当前n个小写字母的全排列(共n!种)都作为S的子序列(可以不连续)出现。由这个定义出发,可以得到一个简单的枚举法去验证,但是它实在太慢了。所以现在请你设计一个算法,在1秒内判断出给定的串是否是阶乘字符串。Input输入第1行一个整数T,表示这个文件中会有T组数据。接下来分T个块,每块2行:第1行一个正整数n,表示S由前n个小写字母组成。第2行一个字符串S。Output对于每组
2021-07-05 21:08:41
169
原创 Spacing(空格) 题解
SpacingDescription排版是很有讲究的。假设稿纸的宽度是W个字符,长度不限,当你对一篇文章排版时,必须满足以下条件:1.必须保持单词的次序。下图显示了对4个单词“This is a pen”在一张宽11字符的稿纸上排版的结果:注:即求最长连续空格长度的最小值。Input输入的第一行是用空格分隔的两个正整数W和N(3<=W<=80000,2<=N<=50000),分别代表稿纸的宽度和单词数。接下来有N个正整数,第i个正整数xi代表第i个单词的长度(1<
2021-07-05 16:04:46
186
原创 【GDOI2021PJ Day2T1】杂音密码(noise) 题解
【GDOI2021PJ Day2T1】杂音密码(noise)DescriptionInputOutputSample Input样例输入1:7 30 2 1 1 72 2 7 3 5 0 12 1 2样例输入2:7 30 2 1 1 70 1 6 0 1 0 11 2 3Sample Output8题解考场不会KMP的痛把混合序列和杂音序列一减(注意处理一下模数),就是一道KMP模板题了,直接拿密码序列去匹配即可But我考场不会KMP+没处理模数痛失80COD
2021-04-17 09:43:08
166
原创 Islands and Bridges 题解
Islands and BridgesDescription给定一些岛屿和一些连接岛屿的桥梁,大家都知道汉密尔顿路是访问每个岛屿一次的路线,在我们这个地图中,每个岛屿有个正整数的权值,表示这个岛屿的观赏价值。假设一共有N个岛屿,用Vi表示岛屿Ci的价值,汉密尔顿路C1C2…Cn的价值是以下三部分的总和:(1)所有岛屿的价值之和;(2)对于路径中相邻的两个岛屿CiCi+1,把两个岛屿的价值之积加到总价值中;(3)路径中连续三个岛屿CiCi+1Ci+2,如果Ci与Ci+2有桥直接相连,则把这三个岛屿价
2021-04-03 16:21:30
1138
1
原创 【NOI2001】炮兵阵地 题解
【NOI2001】炮兵阵地Description司令部的将军们打算在NM的网格地图上部署他们的炮兵部队。一个NM的地图由N行M列组成,地图的每一格可能是山地(用“H” 表示),也可能是平原(用“P”表示),如下图。在每一格平原地形上最多可以布置一支炮兵部队(山地上不能够部署炮兵部队);一支炮兵部队在地图上的攻击范围如图中黑色区域所示:如果在地图中的灰色所标识的平原上部署一支炮兵部队,则图中的黑色的网格表示它能够攻击到的区域:沿横向左右各两格,沿纵向上下各两格。图上其它白色网格均攻击不到。从图上可见炮
2021-04-03 16:00:29
2461
1
原创 最佳挑水 题解
最佳挑水【推荐】Description小Y住在农村,离他的家不远有一口井,传说是小Y的祖先开掘的。虽然小Y的村子里通了自来水,但由于这口井的井水质量非常好,因此小Y家仍然喝这口井里的水。小Y非常喜欢这口井,所以他经常去挑水。 小Y的家里有n(n是偶数)只桶,这些桶虽然大小相等,但是由于很多都有些破损,所以认为它们是不同的。小Y经常挑一根扁担(当然一定是带两只空桶)去井边挑水。小Y每次去井旁都会把桶中的水装到极限(假设水量无穷,且小Y都能够挑得动)。设小Y挑得是i,j两只桶,则挑水一趟需要走time[
2021-04-03 15:36:56
440
原创 【GDOI2016模拟4.5】刺客 题解
【GDOI2016模拟4.5】刺客DescriptionSillyHook是一个著名的刺客,虽然他比较Silly,但他精通打洞,善于深入敌方内部刺杀敌人。现在SillyHook接到了若干个消灭敌人的任务,每次任务中他都会装备一把耐久度为m 的钩刃,并打洞潜入敌方内部。有n 个待消灭的敌人SillyHook消灭第i 个敌人需要消耗钩刃Ai 点耐久度(如果有其他武器则可以选择用其他武器消灭这个敌人,且不消耗钩刃耐久度),之后便得到他的武器,可以用来消灭任意Bi 个敌人。但SillyHook太Silly了
2021-03-22 19:22:40
272
原创 【GDKOI 2021提高组DAY2T1】游戏 题解
【GDKOI 2021提高组DAY2】游戏(game)DescriptionsInputOutputSample Input21 21 2Sample Output21 21 2Data Constraint分析题目大意就是一开始你有0颗星,需要进行对局,每赢一局可以获得一颗星,每输一局会扣除一颗星,给出当你持有iii颗星时的胜率,问获得nnn颗星期望对局多少次。比赛的时候我推了1h的式子,其实已经推出来了,后来像个NT一样在后面加了一点无关的东西结果挂了这道题目很显
2021-01-30 18:48:30
377
2
原创 GDKOI2021提高组Day1总结(爆炸)
GDKOI2021提高组Day1总结(爆炸)赛前普及组昨天打完了,没什么好说的,接下1月29日~1月30日就是提高组了早上本想着6:30起床快速吃完早餐到机房学学知识点,临时抱一下佛脚,但是意志力终究还是战胜不了被窝,6:30睁了眼之后又睡到7:10,吃了两个面包就匆匆赶到机房学(fu)习(bai)开始前已经料到题目会很难了,给自己定的目标是100+就行,可是没想到……被分在了504机房,进场发现前后左右被一堆高几届的神仙围着,甚是紧张比赛开始开题,T1题目看了好一会才懂,T2看起来像数据结
2021-01-29 21:43:43
300
原创 Splay入门详解
Splay入门详解写在前面听说平衡树是一种强大的数据结构,听同年级或高年级大佬们讲起来也感觉很牛笔的亚子,而最近XC又叫我们去学习一下LCT!?又因为Splay是学习LCT的基础,而且又比较脍炙人口,于是我便学了一下,经过一个白天的努力,也终于是学会了一点皮毛。为了加深我对Splay的理解,把网上一些讲得有点模糊的知识点给没看懂的同学讲解清楚,于是我就写了这篇博客,保证大家都可以入门 (不行也别怪我哦)Splay是神马东东?下面给出百度的解释:Splay下面我用简单易懂的语言来简单介绍一下:
2021-01-22 20:37:51
852
原创 浅谈美妙的暴力——分块
分块——美妙的暴力前言:最近发现模拟赛的难度突然增大,需要用到的知识点变得很多很多(2-SAT、主席树、树链剖分,甚至还有LCT……),于是我想着来学学知识点,因为有备无患嘛然后想到了若干年前有要用分块的题目听了大佬讲完之后糊里糊涂,又听别人说其实挺容易的,于是我便上OI-WIKI学了一下,发现思想真的很简单,代码也没有什么细节,简单简洁暴力,复杂度也可以接受(当然比起带log的算法还是差一点)博客写的一般大佬勿喷……分块是神马东东?顾名思义,就是将一个区间分成很多块的意思,之后再分别对每个块进
2021-01-14 07:46:05
158
原创 浅谈主席树(可持久化线段树)
主席树(可持久化线段树)前言:建议先掌握线段树再来学习此知识点这几天在中山纪中训练时有做到可持久化字典树的题,听别人说可持久化数据结构的思路都是差不多的,于是我便先上网学了学我看起来认为最简单的可持久化线段树(主席树),学了两个晚上终于学会了一点皮毛 (~ ̄▽ ̄)~,于是我便来总结一下理理思路博客可能写的一般大佬勿喷……名字分析:顾名思义,可持久化的就是可以记录历史版本的意思,通过主席树,我们可以查询到单个节点或一段区间历史的信息,或者对于某个历史版本进行单点修改产生新的版本。(如果想进行区间修
2020-08-11 07:28:10
323
2
原创 c++损友代码
在你的朋友的c++中输入以下代码,可以给他一个very good的惊喜!!!(不过要小心他跟你绝交了……)整人的CODE#include<windows.h>using namespace std;int main(){ long long i; for (i=1;i<=1e15;i++)//如果你想试一试的话这个1e15可以先改小一点 system("start"); return 0;}...
2020-07-31 07:46:46
703
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人