- 博客(24)
- 收藏
- 关注
转载 Luogu P1983 车站分级
Luogu P1983 车站分级首先,这题告诉我们没有把握一定不要在线做;其次,数据比较大的时候是要做离散化的;最后,最重要的是——代码别打太快,不然一定会出事!!!#include<bits/stdc++.h>#define N 1010using namespace std;int n,m,s,cnt,tot,ans;int level[N],stag...
2019-09-28 18:36:00
130
转载 Luogu P3243 菜肴制作
Luogu P3243 菜肴制作神神奇奇的拓扑排序,也就是借这道题学习一下大名鼎鼎的Toposort了……#include<bits/stdc++.h>#define N 100010using namespace std;int d,n,m,cnt,tot;int in[N],ans[N],head[N];struct node { int nxt...
2019-09-23 20:57:00
148
转载 你就在我身边
你就在我身边月华满地,不及梦中有你。——题记江南夜半,月正上弦,轻鸦喑哑。抚琴一曲,听古琴起落留宫商;水袖长舞,饮一壶梦醒烦忧忘。你坐于银镜前,将妆容轻描淡画。窗外,海棠新绽,春风几许。我信步上前,推开轩窗。回眸,你笑意吟吟,与我相望……少时,我原以为自己独身天涯,白衣一件,仗剑四方。现在,方知我不曾远离红尘。韶华辗转却在肩头搁浅,自你来到我身边后,我就变得不能与你分...
2019-09-22 02:05:00
298
转载 Luogu P1445[Violet]樱花/P4167 [Violet]樱花
Luogu P1445[Violet]樱花/P4167 [Violet]樱花真·双倍经验化简原式:\[\frac{1}{x}+\frac{1}{y}=\frac{1}{n!}\]\[\frac{xy}{x+y}=n!\]\[xy=n!(x+y)\]\[-n!(x+y)+xy=0\]\[(n!x+n!y)-xy=0\]\[(n!)^2+(n!x+n!y)-xy=(n!)^2...
2019-09-20 23:25:00
825
转载 Luogu P1993 小K的农场
Luogu P1993 小K的农场我真的不理解什么是差分约束,这道题的建边只是我凭理解、推演和直觉瞎搞出来的……因为这道题要判断存在性,所以判断途中有没有环即可(判环就用SPFA)。显然图中有环时,就不存在满足条件的方案。(如\(a>b,b>c,c>a\)的情况)以下就是所谓的差分约束建边的条件:\(a-b \geq c\),建边\(e[b,a]=c\)(表示...
2019-09-19 21:29:00
108
转载 Luogu P1525 关押罪犯
Luogu P1525 关押罪犯这又是道神奇的并查集。先按愤怒值大小从大到小排列所有仇恨关系。再判断每一组仇恨关系中两人是否可以分在两个监狱中。如果可以,就分开病把两人标记为彼此的敌人。如果不可以,就输出两人冲突的影响力。但这里又有一个小技巧,就是把敌人的敌人与自己合并。(这个真的见得太多了)最后如果始终没有冲突发生,就输出\(0\)即可。#include<bits/s...
2019-09-17 22:05:00
103
转载 Codeforces Round 585
Codeforces Round 585浅论如何发现自己是傻子的……反正今天是完全蒙的,水了签到题就跑了……A. Yellow Cards签到题。众所周知,CF的签到题一般是一道神神奇奇的数学题。思路2s出,细节一大堆……当然,这个做法的时间复杂度并不优秀……#include<bits/stdc++.h>using namespace std;int a...
2019-09-15 20:39:00
144
转载 Luogu P2330 繁忙的都市
Luogu P2330 繁忙的都市裸的最小生成树。当然,一定要注意它让你输出什么。#include<bits/stdc++.h>#define N 100010using namespace std;int n,m,cnt,s,mmax;int fa[N];struct node { int frm,to,w;}e[N];void addE...
2019-09-15 12:32:00
95
转载 Luogu P1268 树的重量
Luogu P1268 树的重量当\(n=2\)时,显然\(ans=dis(1,2)\).当\(n=3\)时,路径总和为\(dis(1,2)\)加上点\(3\)到点\(1\)点\(2\)连线的长度。即\(ans=dis(1,2)+\frac{dis(1,3)+dis(2,3)-dis(1,2)}{2}\).那么考虑\(n\)为任意值时,第\(n\)条路径可以处于点\(1\)到点\(...
2019-09-15 01:48:00
96
转载 Luogu P1113 杂务
Luogu P1113 杂务我真的不知道为什么这题是图论题……因为第\(n\)件事的前驱只会在前\(n-1\)件事中,所以可以从第\(1\)件事开始遍历。而且,最优的情况便是第\(i\)件事的结束时间尽量大(第\(1\)件事的结束时间就是第\(1\)件事的花费时间),就选择第\(i\)件事作为第\(n\)件事的前驱。得到每件事的结束时间后,与\(ans\)取max即可。(注意这题...
2019-09-15 00:46:00
95
转载 奈良有鹿
奈良有鹿一雨后的奈良粉花灼灼,梦幻一般氤氩着清凉的雾气,空气里弥漫的是泥土和吉野樱瓣浅浅的香。穿着浅蓝色水手制服的少女梨衣正一手执伞,小心翼翼避开青石板间积聚的雨水。精致的木制格子和屋,宅外门旁的木制铭牌上工工整整刻着“西园寺家”的字样,梨衣推门而入的时候,满头银发的奶奶正跪坐在地板上插花,“是梨衣回来了,辛苦了,我有准备好天妇罗哦。”梨衣在玄关处换鞋子,一笑露出...
2019-09-13 16:27:00
557
转载 Luogu P1892 团伙
Luogu P1892 团伙这是道很简单的并查集……不,它并不简单。这道题考了一个叫做反集的东西。也就是说:如果\(a\)和\(b\)是敌人,合并\(n+b\)和\(a\),\(n+a\)和\(b\);如果\(c\)和\(a\)是敌人,合并\(n+c\)和\(a\),\(n+a\)和\(c\);那么\(b\)和\(c\)就并在一起了。这样就符合了题目敌人的敌人是朋友的规则...
2019-09-11 21:47:00
137
转载 Luogu P1330 封锁阳光大学
Luogu P1330 封锁阳光大学点开这道题的算法标签,你就会发现诸多关于搜索和图论的标签。但是!唯独缺了并查集!所以这道题我就用并查集A了它。(我看了下提交记录,用所谓的正解——搜索判连通图,用时基本上在200ms+,但用并查集只要30ms上下)而且我代码还是在线做的……就是把相邻的异色点用并查集放在一个集合里,只要有一条边上两端的点同色,就直接输出“Impossible”并...
2019-09-11 21:30:00
110
转载 Luogu P2661 信息传递
Luogu P2661 信息传递并查集+判环。(这样做甚至能做成在线的,极限复杂度就只有\(O(n^2)\))我们在连接一个点到另一个点之前,先用并查集判断是否构成一个环,如果是的话,我们就可以记录下这个答案,然后维护最小的答案。那么,如果构成一个环的话,怎么记录它的长度呢?我们可以先定义一个变量\(cnt\),在并查集获取祖先的函数中使\(cnt\)的值加\(1\),最后函数结...
2019-09-09 21:18:00
108
转载 Luogu P1114 “非常男女”计划/Luogu P2697 宝石串
Luogu P1114 “非常男女”计划/Luogu P2697 宝石串(感觉我最近很爱做双倍经验的题啊)使\(d\)等于第\(i\)个位置男生数(绿宝石数)减女生数(红宝石数)的差值。那么差值相等的两个位置之间的人(宝石)是满足相等的。所以找到在差值相等情况下最左边和最右边的位置。特别要注意要把\(0\)的位置作为差值为\(0\)的起点。(两道题的读入略微有些不同)Luo...
2019-09-06 22:45:00
240
转载 Luogu P1062 数列
Luogu P1062 数列题目说:把所有\(k\)的方幂及所有有限个互不相等的\(k\)的方幂之和构成一个递增的序列。这就是说,每一个\(k\)的方幂只能有或没有。有为\(0\),没有为\(1\)。所以这些数在二进制下是这样的:\(1,10,11,100,101,110,111,1000\cdots\)所以,第\(n\)项在十进制里就是\(n\).#include&...
2019-09-05 23:25:00
145
转载 Luogu P1078 文化之旅
Luogu P1078 文化之旅一打开题目,你就会看见第一行有这样几个字——“本题是错题”。但这并不影响此题的价值以及CCF的黑心。首先,因为数据小,所以用邻接矩阵存图即可。其次,如果起点和终点的文化相同,那显然无解。最后,跑一遍Floyd,如果起点到终点的距离仍然为\(INF\),那就说明起点到终点没有通路;否则输出距离即可。(插一句,上次某题因为\(INF\)设成\(0x7...
2019-09-03 22:53:00
123
转载 Luogu P1290 欧几里得的游戏/UVA10368 Euclid's Game
Luogu P1290 欧几里得的游戏/UVA10368 Euclid's Game对于博弈论的题目没接触过多少,而这道又是比较经典的SG博弈,所以就只能自己来推关系……假设我们有两个数\(m,n\),我们先把\(m\)设为较大值,\(n\)设为较小值。现在我们把它分成三种情况:1.若两数为倍数关系,当前操作的一方赢。2.若\(m \div n>1\),那么还是操作一方赢。...
2019-09-02 22:51:00
125
转载 Luogu P1276 校门外的树(增强版)
Luogu P1276 校门外的树(增强版)本来看着是道普及-,就不打算写博客了,结果因为出了3次错,调试了15min就还是决定写一下……本题坑点:1.每个位置有三种情况:空穴,树苗,树(而不只有空穴和树)。2.每个位置初始是种了树的(注意是树)。3.第二个输出是被砍后又种上的树苗数。总而言之,一道普及-的题都有那么多细节,所以以后真要好好读题了……#include<...
2019-09-01 00:20:00
385
转载 Codeforces Round 582
Codeforces Round 582这次比赛看着是Div.3就打了,没想到还是被虐了,并再次orz各位AK的大神……A. Chips Moving签到题。(然而签到题我还调了20min……)因为数据小,所以像我一样打模拟也可以,但其实只要统计一下奇数偶数的个数并输出较小的一个即可。#include<bits/stdc++.h>using namespace ...
2019-08-31 02:26:00
86
转载 Luogu P1294 高手去散步
Luogu P1294 高手去散步因为数据较小,所以用邻接矩阵存图即可。将1号点到\(t\)号点分别设为起点,深搜遍历路线,开一个\(vis\)数组,记录每一个点是否被访问过。每次求出从当前起点出发的最大路线,就更新一次答案。#include<bits/stdc++.h>#define N 30using namespace std;int t,n,ans,s...
2019-08-29 22:05:00
209
转载 Luogu P1025 数的划分
Luogu P1025 数的划分因为这里要考虑到不重复,所以可以按升序记录每一次划分:记录上一次划分所用数,保证当前划分所用数不小于上次划分所用数,当划分次数等于\(k\)时,比较该次划分所得总分是否与\(n\)相同并记录次数。这题标签里的剪枝就是枚举当前划分所用分数时应该从\(last\)(上次划分所用分数)枚举到\(sum+i \times (k-cur)\leq n\)为止,因...
2019-08-29 21:43:00
97
转载 Luogu P2935 最好的地方Best Spot
Luogu P2935 最好的地方Best Spot这道题就是一道近乎裸的Floyd,因为数据很小,所以用领接表存图就可以了。#include<bits/stdc++.h>#define INF 0x3fffffff#define N 510using namespace std;int p,f,c,mmin=INF,sum,ans;int like[N],...
2019-08-26 22:22:00
207
转载 组合数
组合数其实我也没想到我第一篇博客会讲一个偏数学的内容。主要是我太弱了,只会这个何为组合数记号\(C_n^m\)表示组合数,其意义为在\(n\)个可区分物品中无序地选择\(m\)个物品的方案数。如三个数分别为\(1,2,3\),希望选出两个数,则有\((1,2)(1,3)(2,3)\)三种方案。因为是无序选择,因此\((1,2)\)和\((2,1)\)被认为是同一种方案。因而...
2019-08-24 18:06:00
448
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人