自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

逐梦者

我本将心向明月,奈何明月照沟渠!

  • 博客(1341)
  • 资源 (28)
  • 收藏
  • 关注

原创 51Nod-1849-Clarke and package

ACM模版描述题解官方题解:代码#include <iostream>#include <algorithm>#include <cstdio>using namespace std;const int MAXN = 3000;const int MAGIC_I = 10000;const double MAGIC_D = 0.0001;template <class T>inline v

2017-12-09 13:55:16 397

原创 51Nod-1650-穿越无人区

ACM模版描述题解由: |x+y|≡0 mod (2∗a)|x + y| \equiv 0\ mod\ (2 * a) |x−y|≡0 mod (2∗b)|x - y| \equiv 0\ mod\ (2 * b) 可得, x+y=n∗(2∗a)x + y = n * (2 * a) x−y=m∗(2∗b)x - y = m * (2 * b)此时,画一下图就很容易发现,沼泽都是连在一起的,并

2017-12-09 00:57:08 359

原创 51Nod-1835-完全图

ACM模版描述题解最近懒了好多,写题少了好多,闲来无事水一发……DPDP 问题,设 dp[i][j]dp[i][j] 表示前 ii 个点形成 jj 个连通块的方案数,具体细节看官方题解吧,不难理解。懒得写 LatexLatex 表达式了……代码#include <iostream>using namespace std;typedef long long ll;const int MOD = 998

2017-12-07 14:19:08 859

原创 DES算法-C/C++实现

闲来无事,车一下轮子,折腾了大半天才搞懂 DESDES 是干毛子的,看了好多博客才弄清楚这个算法的具体原理,真是心累。只是简单的实现,功能比较简陋,因为参考的博客太多了,就不一一列举了,感谢前辈们的强大,让后辈得以更加快捷方便的学习。代码#include <cstdio>#include <cstring>// IP 初始置换表const int IP_Init_Table[64] ={

2017-12-06 17:33:44 2411

原创 UVALive-7509-Dome and Steles

ACM模版描述 题解找到一篇不错的题解,写的十分详细,三分。twh233’s blog,有详细的图解,我就不转述了。毕竟,懒。代码#include <iostream>#include <algorithm>#include <cmath>using namespace std;const int MAXN = 1e5 + 10;const double EPS = 1e-14;temp

2017-11-27 13:58:10 471

原创 UVALive-7512-November 11th

ACM模版描述 题解规律题。直接看代码吧,十分好理解。代码#include <cstdio>#include <iostream>#include <cstring>using namespace std;const int MAXN = 1111;int T;int r, c;int seat[MAXN][MAXN];int main(){ scanf("%d", &T);

2017-11-22 19:21:57 280

原创 UVALive-7500-Boxes and Balls

ACM模版描述 题解签到题,二分即可。代码#include <iostream>#include <cstdio>using namespace std;typedef long long ll;ll n;int main(){ int T; cin >> T; for (int ce = 1; ce <= T; ce++) { scanf("%l

2017-11-22 19:10:15 273

原创 51Nod-1649-齐头并进

ACM模版描述题解其实这个题放在二级是有理由的,只不过有坑点而已。一开始看到这个题我很懵逼,怎么避免同时停靠在一个城市呢?如果出现这样的情况,如何绕路才是最好的方案呢?想了一会儿,才发现,想多了……根据题目,我们知道,凡是两个没有火车道直接连通的城市都会建公交。那么从起点通过两种交通方式到达同一个城市,一定是有一种一步便可以到达,另一种则需要多走几步。那么,不管这同一个城市是在途中还是终点,都不可能

2017-11-22 13:19:37 876

原创 HDU-5575-Discover Water Tank

ACM模版描述题解左偏树可解。初始默认所有 z=0z = 0 的情况,然后枚举 z=1z = 1 的情况来更新答案,并且可以用并查集来维护合并的水箱,既然水箱要合并,那么计算水箱的合并用可并堆比较快,可并堆中比较常用编码难度比较低的数到左偏树了。这里由于需要向左向右进行查找挡板,合并后就忽视掉中间的挡板从而视作一个整体,所以仿真链式存储结构比较好。代码#include <iostream>#inc

2017-11-21 22:17:11 559

原创 HDU-5584-LCM Walk

ACM模版描述题解一只疯狂的青蛙位于 (x,y)(x, y),每次只能朝 (x+lcm(x,y),y)(x + lcm(x, y), y) 或 (x,y+lcm(x,y))(x, y + lcm(x, y)),但是青蛙初始的位置并不是题目给出的,题目只给出 (ex,ey)(e_x, e_y),也就是青蛙最后跳到的地方,问青蛙有多少种 (x,y)(x, y) 的可能,也就是起点的存在。一开始很容易想成

2017-11-20 17:33:13 375 2

原创 HDU-5572-An Easy Physics Problem

ACM模版描述题解计算几何问题,给定一质点的位置和速度,给定一个圆柱的圆心和半径,质点移动如果撞上圆柱则发生弹性碰撞。问这个点是否可以经过另一个质点。这个题比较直观的想法是求角度,但是这样容易存在精度上的误差,所以可以采用求一个点关于直线的对称点来求出弹性碰撞后的轨迹,判断另一个质点是否在这个质点的运动轨迹上即可。代码#include <cstdio>#include <iostream>#in

2017-11-20 16:19:41 516

原创 HDU-6004-Periodical Cicadas

ACM模版描述题解在 n∗mn * m 的区域中,有 n∗mn * m 种知了,给出每种知了第一次出现的年数 ss 和周期性 zz,然后询问 (x1,y1)(x_1, y_1) 和 (x2,y2)(x_2, y_2) 为对角线顶点的矩形区域中,所有种类知了同时出现的年份。这里要求矩形区域中所有知了第一次同时出现的年数,我们可以先从两只知了考虑,设甲第一次出现、甲出现周期、甲出现的次数、甲出现的年数、

2017-11-19 14:56:52 527

原创 HDU-6008-Worried School

ACM模版描述题解简单的模拟题,题意不是特别容易翻译,但是模拟的规则十分简单,和 WFWF 晋级资格相似,大致是一共 X+Y=GX + Y = G 个名额,其中 XX 分给中国五个区域赛,YY 个分给 ECFinalECFinal,先考虑五个区域赛的每个赛区的五个第一名、五个第二名、五个第三名……其中重复的只算一次,凑够 XX 个,然后在 ECFinalECFinal 中选前若干名去除和前边五个赛区

2017-11-18 20:05:00 454

原创 HDU-6000-Wash

ACM模版描述题解给定 LL 件衣服让你去洗,洗衣房有 nn 个洗衣机和 mm 个烘干机,每个设备都给定你完成工作所需时间,但是由于设备比较烂,每个设备在某一段时间内只能洗一件衣服,问洗完这 LL 件衣服最短用时多久?这个题很简单,想要时间最短,自然是考虑烘干最后一件衣服所需的时间,那么怎么要这个最后一件衣服在最短时间内处理完呢?这里就涉及到贪心了,首先我们可以根据洗衣机洗涤时间处理出来每件衣服洗干

2017-11-17 19:19:41 456

原创 KWIC-C/C++实现

吐槽最近我们 JavaJava 老师不知道为啥非要我用 C/C++C/C++ 来实现 KWICKWIC,但是因为没有上过课,不知道这个东西是干嘛的,所以想网上 downloaddownload 一下,然而,百度后发现,实在是没有什么能看的过眼的代码,修改他们的代码难度比自己写要大好多,于是,决定找一下定义自己动手实现一下。描述KWICKWIC 索引系统接受一些行,每行有若干字,每个字由若干字符组成;

2017-11-17 13:09:06 2249 3

原创 HDU-6010-Daylight Saving Time

ACM模版描述题解这个题的难点在于题目不好懂,只要读懂了题目,细心一些的人都能做出来。大致的思路是先预处理出来每年的两个时间节点,也就是每年三月份的第二个星期天和每年十一月份的第一个星期天是多少号,然后直接拿数据进行对比即可。现在来说重点,预处理的手段不止一种,常规一些的就是按照年往后推,一年 365365 或者 366366 天,让它们模 77 然后进行偏移,感觉这种方法比较容易想,方法也不错,还

2017-11-16 09:17:15 511

原创 51Nod-1645-中位数变换

ACM模版描述题解这个题很明显是找规律的问题,直接暴力肯定会超时……虽然我也是暴力也两发才反应过来……平时做题总是抱着侥幸心理,比赛时却总是胆小如鼠……自己手解几组长一点的数据就可以发现,不管初始状态如何,最终都会变成连续的 00 和连续的 11 的若干组合,这里的连续是长度大于 11。那么,换言之也就是所有的 00 和 11 紧密交替子序列会被格式化,最后格式化成什么呢?经过推算发现,最后的格式和

2017-11-15 15:01:30 375

原创 HDU-6006-Engineer Assignment

ACM模版描述题解常规的状压 DPDP 套路。给定 NN 个任务和 MM 个工程师,每个任务都有不超过三个的领域人才需求,每个工程师都有不超过两个领域精通。问在工程师只能使用一次的情况下,最多完成多少任务?题目的数据很明显的告诉我们要用状压 DPDP,设置 dp[i][j]dp[i][j] 表示前 ii 个任务,工程师选用组合状态为 jj 时的最多完成任务数。这里我们可以先预处理一下每个任务可以由哪

2017-11-14 14:54:34 300

原创 51Nod-1833-环

ACM模版描述题解图论的问题我没有怎么深入学习,多数都是交给了队友去搞,所以看到这个题时,只知道是图上状压 DPDP,却不知道具体从何入手。看了题解发现,原来形成不相交的简单环其实就是二分图的完美匹配,最后要求的就是二分图的完美匹配的个数取模。所以我们定义 dp[i][j]dp[i][j] 表示前 ii 个点匹配的状态为 jj 的方案数,则最后的结果便是 dp[n][(1<<n)−1]dp[n][(

2017-11-14 13:50:17 401

原创 51Nod-1803-森林直径

ACM模版描述题解根据题目,我们知道,数据是随机建树的,所以树的深度不会特别大,约摸 lg nlg\ n,所以我们可以树归搞搞,亲测,数据随机建树深度最大不超过 6161,大一点没毛病,小一点就 WAWA,至于官方题解中所说的解法,不是特别会写,只给大家贴一下参考参考。官方题解:代码#include <cstdio>#include <cstring>#include <algorithm>us

2017-11-13 20:59:30 621

原创 51Nod-1638-字符串重组

ACM模版描述题解仔细分析这个问题两个串儿的结构,首先将第一个串通过 ii 和 jj 拆解成三部分,i+1∼j−1i + 1 \sim j - 1 作为第二个串儿的第一部分,j∼n−1j \sim n - 1 翻转拼接其后,0∼i0 \sim i 翻转拼接其后,所以其实这个问题也就是为字符串匹配问题。首先将原串进行翻转然后 kmpkmp,之所以要这样做是因为第二个串儿后边两部分是翻转后的匹配,并且要

2017-11-13 00:32:06 441

原创 51Nod-1032-骨牌覆盖 V2

ACM模版描述题解数据弱化的一个题,原题是 51Nod1033骨牌覆盖V251Nod 1033 骨牌覆盖 V2,插头 DPDP。代码#include <iostream>#include <algorithm>#include <cstring>#include <cstdio>using namespace std;typedef long long ll;const int MOD = 1

2017-11-11 01:41:35 636

原创 51Nod-1157-全是1的最大子矩阵

ACM模版描述题解很经典的一个问题,最大 11 矩阵模板,直接套。代码#include <iostream>using namespace std;const int N = 105;int m, n;bool a[N][N];int Run(const int &m, const int &n) // a[1...m][1...n]{

2017-11-11 01:32:13 328

原创 51Nod-1054-最长等差数列

ACM模版描述题解额,最近不知道 51Nod51Nod 怎么了,一下子井喷了好多题,不过这个题就是 1055最长等差数列1055 最长等差数列 的一个数据弱化,直接贴 10551055 的代码稍微改一下数组开的大小即可。代码#include <cstdio>#include <algorithm>using namespace std;int const MAXN = 105;int n, ans

2017-11-11 01:15:38 451

原创 51Nod-1635-第K个幸运排列

ACM模版描述题解1∼n1\sim n 的排列数是 n!n!,阶乘的增长速度是恐怖的,题目中 1≤n,k≤1091 ≤ n, k ≤ 10^9,那么 nn 只要超过 1313,13!=6,227,020,80013! = 6,227,020,800,已经超过了 kk 的最大范围,所以我们很容易想到的是,将 1∼n1 \sim n 序列分成两部分,前部分是 1∼n−cnt1 \sim n - cnt,

2017-11-09 19:43:31 367

原创 51Nod-1829-函数

ACM模版描述题解典型的第二类斯特林数,很容易想到递推式 S(i,j)=j∗S(i−1,j)+S(i−1,j−1)S(i, j) = j * S(i - 1, j) + S(i - 1, j - 1),可是这种写法肯定超时,因为数据太大,复杂度 O(nm)O(nm),所以需要利用容斥来寻求更快的方案。像这种公式,我只能记得一个大概,只好借助百度找到了 S(n,m)=1m!∗∑i=0m(−1)i∗C(

2017-11-07 13:10:40 471

原创 ACM-ICPC 2017 Asia QingDao:喜,抑或是悲?幸运,抑或是倒霉?退役!!!

在连续打崩两场 ACMACM 区域赛后,我们再一次背上沉重的书包踏上了远方的路……我们已经从当初的一银两铜的退役收尾期望变成了只求这场不打铁,不然我们会被浩哥掐死的。哦,忘了说了,浩哥是我们只在意有没有成绩却不在意能给我们提供多少帮助的老师……不过最狗血的是,这次我们的指导老师是一个从农学院转过来的见都没有见过的党委书记……万恶的官僚主义,一个见都没有见过的党委书记成了我们的指导老师,这很清真!周五

2017-11-07 01:33:58 1942 15

原创 HDU-4405-Aeroplane chess

ACM模版描述题解概率 DPDP,求期望。状态转移方程很容易想,设 dp[i]dp[i] 表示在位置 ii 还需要多少期望才能到达终点,那么 dp[n]=0dp[n] = 0,求 dp[0]dp[0] 即可。状态转移方程如下:dp[i]=∑x=16dp[i+x]6.0+1dp[i] = \sum_{x = 1}^6 \frac{dp[i + x]}{6.0} + 1但是题目中提到了传送门,也就是说当

2017-11-01 18:15:36 378

原创 ZOJ-3329-One Person Game

ACM模版描述 题解kuangbin 大佬的题解,神乎其技:代码#include <iostream>#include <cstdio>#include <cstring>using namespace std;const int MAXN = 600;int n, k1, k2, k3, a, b, c;double A[MAXN], B[MAXN], P[MAXN];int main(i

2017-11-01 16:58:53 423

原创 GoldenDream-Nov.

时间过得贼快,转眼就十一月了,十月底的两场比赛纷纷打崩,感觉没有发挥出来自己的实力……当然,这样怪不得别人,只能怪我训练的少,发挥不稳定。立马就要面临最后一场区域赛了,青岛赛区,听说青岛大虾很好吃,不过高考后骑行去的时候没有钱吃,所以这次一定得尝试一下。这次青岛赛区的比赛结束后,我就该退役了,得好好准备考研了,我想考上科大,貌似是一个很不错的学校,为了表示我考上科大的决心,我连 QQ小冰QQ小冰 的

2017-11-01 13:28:30 421 3

原创 POJ-3744-Scout YYF I

ACM模版描述题解分段 + 概率 DPDP + 矩阵加速。首先,题目给了雷的数目至多只有十个,不算多,可以将全程进行分段,保证每段只有一个雷或者多个雷在一个位置,并且雷的位置都是段尾。分段后,每一段之间都是独立的,求出安全通过每一段的概率,最后根据乘法原理即可求出整段的概率。我们拿第一段来说,第一段是 1∼x[0]1 \sim x[0],在 x[0]x[0] 处有雷,安全通过就是到达 x[0]+1x

2017-10-31 20:37:57 344

原创 POJ-2096-Collecting Bugs

ACM模版描述题解寻找 nn 种 bugbug 且 ss 个子系统均有波及的期望。设 dp[i][j]dp[i][j] 表示已经找到了 ii 种 bugbug,并且已经波及到了 jj 个子系统的期望。所以,dp[n][s]=0.0dp[n][s] = 0.0,而 dp[0][0]dp[0][0] 则是我们要求的答案。由题可知,dp[i][j]dp[i][j] 可以转化为以下四种:dp[i][j]d

2017-10-31 13:44:27 357

原创 51Nod-1637-幸运数字转换

ACM模版描述题解做这个题需要敏锐的观察力……像我这样反应迟钝的人只能多 TT 几发才知道。当读第一遍题时,我就很奇怪,1≤n≤1051 ≤ n ≤ 10^5,而 0≤k≤1090 ≤ k ≤ 10^9,kk 这么大肯定会超时,但是当我看到描述中如果没有相应的 xx 时就结束,所以大意了,以为当 kk 很大时肯定会直接跳出来……谁成想,扫描一遍 TT 了,各种优化了几发还是 TT。再仔细想想,发现,

2017-10-30 17:16:26 505

原创 ICPC-西安赛区:翻船

上周六早上六点出发西安,十一点到了之后打的花了 238238 块大洋才到了西工大,自信满满的想着一定不会白跑一趟……下午,三点多开始了模拟赛,一如既往(其实我这是第一次)的是三到模拟题,不过,我们只 AA 出来了一道题,其他两道不是不会,而是不顺……大致的来说,第一道题考的是运气,第二道题考的是细心,第三道题考的是胆量……然而我们这三点都╮(╯﹏╰)╭不好……第一道题试了三发罚时了三发,第四发将 n

2017-10-30 14:13:49 798 18

原创 51Nod-1636-教育改革

ACM模版描述题解按照课程复杂度从小到大进行排序,设 dp[i][j][k]dp[i][j][k] 表示前 ii 门课程选择了 jj 门并且第 jj 门课程为 ii,并且课程 ii 布置的作业数量为 a[i]+ka[i] + k 时的最大总作业量。代码#include <cstdio>#include <cstring>#include <iostream>#include <algorith

2017-10-28 00:04:07 577

原创 HDU-1512-Monkey King

ACM模版描述题解典型的左偏树!问题的核心是当两个猴子帮派中的大佬斗争之后,这两个大佬要强壮值减半并且两个帮派进行合并。那么涉及到的操作有优先队列的删除节点,优先队列的插入节点,优先队列的合并,因为普通的优先队列并不适合合并,所以这里采用左偏树比较合适。给每个猴子建立一棵左偏树,不断进行合并,这样的话,插入节点的操作可以和优先队列的合并操作合在一起写,都看做优先队列的合并即可。具体的看代码,很好理解

2017-10-27 14:45:29 328

原创 51Nod-1621-花钱买车牌

ACM模版描述题解水题不水,有坑。思路炒鸡简单,首先我们记录下来 0∼90 \sim 9 每个数字的个数,然后枚举让 xx 出现 kk 次的最小花费。这里先说第一个容易错的点儿,那就是当初始状态就满族时,直接特判最小花费为 00,按照原数输出; 第二个容易错的地方便是,数字的变更的贪心策略,假如说最优解释让 xx 出现 kk 次,那么我们需要先考虑将 x−ix - i 和 x+ix + i 变成

2017-10-26 23:28:39 506

原创 CCPC-哈尔滨赛区:划水之旅

2017:10:19未来两三天就要进行 CCPCCCPC 的哈尔滨赛区的划水大赛了!!!好激动,好紧张,好兴奋ヾ(o◕∀◕)ノヾ但是你要问我定了啥目标,我想争取不打铁吧…… 但是你要问我准备好了吗,我想想啊,身份证,OKOK;学生证,OKOK;校园一卡通,OKOK;手机,OKOK;充电器,OKOK;移动电源,OKOK;插板,OKOK;最厚的衣服,OKOK;模板,OKOK;算法竞赛入门经典,OKOK

2017-10-19 18:40:37 1327 8

原创 HDU-5558-Alice's Classified Message

ACM模版描述题解给定一个长度不超过 10W10W 的只包含小写字母的字符串,从下标 00 到 n−1n - 1。从下标 00 开始操作, 每次对于下标 pospos 查找下标 pospos 开始的子串中最长的在其他地方出现过的长度, 其他出现的位置要求起点在位置 pospos 之前,然后 pospos 移动到这个长度之后继续操作; 如果没有这样的最长串儿就直接 pos++pos++,继续操作

2017-10-18 17:19:06 769

原创 POJ-3866-Exclusive Access 2

ACM模版描述 题解这绝对是我做过最长的题,也是最难理解的题,翻译成中文都很难理解。简单的说,就是安排任务使用两个资源的顺序,使最坏情况下,执行任务的等待时间最短。sdfzyhx’s blog 说可以将资源看成点,任务看成无向边,任务就是把无向边定向,使图中不存在环并且最长链最短。然后就是根据一个 DilworthDilworth 定理搞搞,把点分成 mm 部分,使每一部分内部没有边,mm 的

2017-10-17 18:38:11 389

The Swift Programming Language(中文完整版)

The Swift Programming Language(中文完整版) pdf

2018-05-26

EMACS 编辑器入门

EMACS 编辑器入门 pdf

2018-05-26

C 语言与 C++ 语言程序设计

C 语言与 C++ 语言程序设计 pdf

2018-05-26

ACM 国际大学生程序设计竞赛-算法与实现

ACM 国际大学生程序设计竞赛-算法与实现 pdf

2018-05-26

一站式学习 C 编程

一站式学习 C 编程 pdf

2018-05-26

算法设计与分析(第2版)

算法设计与分析(第2版)pdf

2018-05-26

设计模式:可复用面向对象的基础

设计模式:可复用面向对象软件的基础.pdf

2018-05-26

移动机器人调研报告

移动机器人调研报告.doc

2018-05-26

软件工程调研报告

近期对软件工程进行了一次小小的调研,写了这份软件工程调研报告,也许存在一些问题,欢迎大佬们指点。欢迎━(*`∀´*)ノ亻!

2018-05-26

软件工程讲义-软件工程电子书 PPT

软件工程讲义-软件工程电子书 PPT

2018-05-26

NOI 知识点

某中学 NOI 教练总结的,发给我学习,分享给大家,总结的还算是可以的。

2018-05-26

尼姆博弈 PPT

感觉挺不错的一个 PPT,适合入门看看,高手绕行。

2018-05-26

动态规划 PPT

姜太公钓鱼愿者上钩,我也不知道这个资源如何,所以酌情下载。

2018-05-26

C语言趣味程序设计编程百例精解

姜太公钓鱼愿者上钩,我也不知道这个资源如何,所以酌情下载。

2018-05-26

九种排序算法

九种排序算法!!!C 语言版的~~~希望对您有所帮助。(#^.^#)

2018-05-26

OI国家集训队论文集1999~2016

1999 年到 2016 年的一些 OI 国家集训队论文,比较多,慢慢啃吧!!!

2018-05-20

佐理慧学姐的数论总结

佐学姐分享的资源总结,挺不错的,可以好好看看。强势推荐~~~

2017-11-02

ACM模板-f_zyj 更新(内含 v 1.1 和 v 2.1 的 .pages 格式和 .pdf 格式)

总是有朋友问我啥时候更新一下自己的模板,我一直拖着没有更新,因为一次更新的时间花费太高了,我一直都想再等等,再等等就更新,可是现在大概是等不了了,快要退役了,这大概是最后一次更新了吧?希望对大家有用。

2017-09-21

十五个经典算法

十五个经典算法的深度剖析。

2016-12-05

经典算法大全

经典的算法问题。

2016-12-05

完全图匹配

完全图匹配数目。

2016-12-05

STL基础教程

一个全面的STL基础教程~~~

2016-12-05

ACM模板-f_zyj

事有烦而不可省,费而不得已,盖此为也!!!

2016-12-05

博弈论之巴什游戏

一个很好地博弈论讲义,希望对大家有所帮助。

2016-07-28

博弈论之威佐夫游戏

一个很好地博弈论讲义,希望对大家有所帮助。

2016-07-28

空空如也

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

TA关注的人

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