自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

逐梦者

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

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

原创 PAT-天梯赛习题集-L2-018-多项式A除以B

ACM模版描述题解原本我以为这个是今年 CCCC 的初赛中最难得题了,毕竟 AC 率是最低的了,可是我发现这个其实真的不是最难的,最难的是那个多标签最短路,为什么这么说,因为我到现在那道题还是19分没有拿全,不知道 bug 出在哪儿了,而这道题,实际上不是代码难写,也不是思路复杂,而是我根本不知道什么是多项式除法,所以比赛时大眼瞪小眼瞪了半个多小时却没有看懂样例,一旦知道什么是多项式除法以及具体怎么

2017-03-30 23:39:48 1405 2

原创 PAT-天梯赛习题集-L3-015-球队“食物链”

ACM模版描述题解一个常规的 dfs 问题,十分容易想到思路,但是需要注意的是这里有一个剪枝——如果当前所剩的节点里没有一个能回到起点,那么就返回,这个剪枝至关重要,不然会在第四组数据超时,丢掉 8 分,想想就肉疼啊,一开始我也没有想到这个,以为是 OJ 测评信息太假了,仔细想了想,才发现还可以这么剪枝,GG~~~代码#include <iostream>#include <cstdio>usin

2017-03-29 13:33:46 945

原创 PAT-天梯赛习题集-L3-014-周游世界

ACM模版描述题解说实在的,这道题我没有完全解决,所以写这个博客不是为了帮助别人解决这个问题,而是希望有朋友帮我找到我的 bug,我找了大半天也没有找到问题所在,30分只得了19分,尴尬症犯了。为了方便大神们看我的代码,我先写一下自己的思路,这里我用的 Dijkstra 的队列+邻接表(堆)优化解法,多标签搜索,除了基础的距离 dist[]、vis[],我又开了三个标签,pre[]:存储父节点,记录

2017-03-29 12:29:03 1766 10

原创 CCCC 天梯赛初赛心得

上周末,CCCC 天梯赛初赛如期举行,和想象中不一样,本来我是抱着旅游的心态去参加的,华中赛区说好的在长沙,怎么说变就变了呢?赛点定在了轻院,这也是我第一次去轻院,从郑东新区(东四环)一直到西四环,差不离跨了整个郑州,差不多坐了整趟地铁,实在是太可怕了,跑了一天,回来腿都疼死了。早上九点半出发,将近十二点才到那里,比不在郑州的朋友路上花费的时间都要长,我也是醉了~~~其实我特别不喜欢这种集体赛,因为

2017-03-28 22:41:26 2003 15

原创 PAT-天梯赛习题集-L3-013-非常弹的球

ACM模版描述题解这道题真的是非常非常水的一道物力题,连公式都给了,变换一下公式即可了,不过这里需要注意一下,可能精度原因,所以不要用能量控制循环,而用速度。真是对不起这道题的阶级,然而我并没有做到它,被上一道题给坑住了,不能 debug,浪费了我一个多小时,还是我眼瞎啊~~~怪不得别人,用习惯了高级IDE,这种垃圾透了的 IDE 真是用不习惯啊。代码#include <iostream>#inc

2017-03-27 22:19:32 1420 8

原创 PAT-天梯赛练习集-L2-020-功夫传人

ACM模版描述题解很简单的一道题,不过出题有些坑了,一看题就知道,这是一个搜索问题,dfs、bfs 都可以用,存储树时我选择的是邻接表,但是却一直24分,拿不到25分。纠结死我了。后来了解到,问题出在 N 为 1 的时候,也就是说只有一个人,既是太师傅,又是得道者(这也太没溜了,一个徒弟也收不了还叫得道者),其实这个我早就想到了,只是有一点我感觉是这个题出的问题,因为题目中说了 Z 是太师傅的功力值

2017-03-26 23:59:40 2293 4

原创 51Nod-1189-阶乘分数

ACM模版描述题解这道数论题挺讲究技巧的,需要先通过原公式推出 N!^2 = (X - N!) * (Y - N!),所以我们只需要求 N!^2 的约数个数。又因为 N!^2 = (p1^a1)^2 * (p2^a2)^2 * … * (pm^am)^2,所以我们只需要求出 2 * a1、2 * a2、2 * a3、…、2 * am,那么我们就需要求小于等于 N 的素数,然后对 1 ~ N (因为我

2017-03-23 23:11:47 699

原创 51Nod-1161-Partial Sums

ACM模版描述题解如果暴力解题是肯定不行的,这个需要算出每个 A[i] 对第 K 次操作的贡献,根据前几次操作的模拟结果可以得出,这是一个组合数,于是乎也就变成了一个如何快速求组合的问题了。对于这道题我也是一知半解,主要是组合数学学得有些差,求组合只会套模版,这就很尴尬了~~~哎呀,我要去看组合数学啦!最后,在这里,必须感谢 ITAK 大神的题解。代码#include <iostream>#inc

2017-03-21 23:48:22 676

原创 PAT-天梯赛练习集-L1-006-连续因子

ACM模版描述题解最开始看错题了,结果想岔了,用尺取法做了,但是不是说尺取法不能做,只是没必要用它,直接用数组存起来所有的因子即可,当然,也可以存一部分因子,毕竟这个结果只和前部分因子以及它本身有关。这里我用的尺取法,效率还算可以,但是系统有一个坑,明明说时间限制为400ms,可是10毫秒多一点儿就超时了,朋友说,大概这是玄学问题吧,于是我就又优化了一些,优化到了10ms,AC 了。这里需要考虑到的

2017-03-21 00:49:31 916

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

ACM模版描述题解这个问题其实和普通的求最大子矩阵相仿,不过在判断是否可以构成矩阵时需要进行特别的判断,A[j][k] - A[i - 1][k] != j - i + 1,为真,则需要进行重置,否则,进行cnt++。但是这个问题还有更加高级的解法,可以用单调栈做,不过个人感觉有些复杂,这里只提供最简单的解法,也就是最大子矩阵解法。如果矩阵再大一些,那就只能用单调栈搞事情啦。也许还有别的方法,那我就

2017-03-20 18:27:01 690

原创 51Nod-1140-矩阵相乘结果的判断

ACM模版描述题解矩阵乘法的复杂度是 O(n^3),大概会超时,所以需要降维,可以构造一个 X 矩阵,根据矩阵乘法结合律来判断 X * A * B == X * C,但是这种解法存在一个隐患,也就是降维会存在信息的丢失,最后可能出现结果不对的情况,虽然这种情况出现的几率十分低,但是处于安全的考虑,还是随机生成 X 矩阵比较好,并且在时间允许的范围内进行双 X 矩阵判定更安全,具体的看代码吧~~~代码

2017-03-19 20:49:50 877

原创 HDU-3549-Flow Problem

ACM模版描述题解基础最大流问题,直接套模版即可,Dinic 算法。代码#include <iostream>#include <cstring>#include <cstdio>/* * Dinic 最大流 O(V^2 * E) * INIT: ne=2; head[]置为0; addedge()加入所有弧; * CALL: flow(n, s, t); */#define t

2017-03-19 19:29:28 340

原创 51Nod-1131-覆盖数字的数量

ACM模版描述题解十分有趣的一个数列问题,只要找到 S 的规律即可,首先我们可以知道,S 所能覆盖的区间一定是 [kA, kB](k = 1, 2, 3, …),所以我们只需要逐个区间考虑与 T 的交集,但是这样并不够快,因为我们还有一个规律没有开发出来,仍然属于暴力解题的范畴。而这个规律只需要多算几个 k 就明了了,随着 k 的增大,S 所能覆盖的区间之间的空隙会一点点变小,最后出现粘连或者交叉,

2017-03-18 21:52:49 674

原创 HDU-1532-Drainage Ditches

ACM模版描述题解基础的最大流问题,模版题,我用了一个十分成熟的 Dinic 算法模版,用了邻接表优化,代码略微长,但是效率还是不错的。GG代码#include <iostream>#include <cstring>#include <cstdio>/* * Dinic 最大流 O(V^2 * E) * INIT: ne=2; head[]置为0; addedge()加入所有弧; *

2017-03-17 17:30:23 543

原创 51Nod-1128-正整数分组 V2

ACM模版描述题解这道题,话题是二分,并且讨论区中 qwb 说这是五级题中最最最简单的题了,于是我也只好向着二分想,可是我想了十几分钟也没有想通如何二分,大概是我思维闭塞吧,二分没有用到精髓,看了讨论区的大致思路,一下子就明白了,二分+贪心。首先求所有数的和,然后二分之,根据每一个 mid 判断是否有合法的分割手法,当然这个判断用的就是贪心的思维,代码十分容易理解,作为职业马后炮,我必须说,这个题是

2017-03-17 12:12:01 626

原创 51Nod-1125-交换机器的最小代价

ACM模版描述题解看了这道题,标记着贪心算法,但是吭哧吭哧了好久也没有想到如何贪心才是最贪心的策略,每次总是感觉有纰漏,无法想到最全的策略。找了找大神的题解,茅厕顿开,真是自己太年轻了。找到一篇 say_c_box 的详细题解,打开了我的思维,着实不错。以下是其核心题解:那么针对每一个机器怎样交换的代价最小?很容易想到要尽可能的使重量小的机器交换次数多,重量大的物品交换次数少。所以策略就是两种,我

2017-03-17 00:54:26 1136

原创 51Nod-1120-机器人走方格 V3

ACM模版描述题解这道题和 V2 所用算法基本相似,都是求组合,并且数据比较大,需要用到 Lucas 定理。核心是求卡特兰数,我是第二次听说这个数,之前在整理 ACM 模版时看过,但是对它并不敏感,昨天看了一些题解后略微了解了一些,卡特兰数 * 2 就是这道题的结果,因为分为上下两部分嘛。卡特兰数公式为 C(2n, n) / (n + 1),也等价于 C(2n, n) - C(2n, n - 1),

2017-03-15 12:57:48 1268 2

原创 C++作业2-文件流对象

作业要求生成随机数据文件 text.txt。从文件 text.txt 中读取数据后排序。将排序好的数据写入 in.txt 文件。解决在主程序文件中加载多个头文件时,命名冲突问题。解决方案用随机生成函数生成数据写入文件流,然后再读取文件流,讲数据存入 num[],排序,将 num[] 中数据写入新文件,不在全局打开 std 命名空间,在调用时使用 std::xxx 等方法。代码ma

2017-03-15 00:04:46 560

原创 51Nod-1821-最优集合

ACM模版描述题解这道题属于一道模拟问题吧,如果没有定义错模拟这个词的话。看到讨论区中有一个 ID 为 zhenhao 的大牛,写了十分详细的题解,我也是看了人家的思路才写的代码,像这种模拟的问题,需要注意的就是思路一定要清晰,把情况考虑周全了,不然很容易错,我就是少考虑一种情况,一直错。繁琐的循环判断有机的组合在一起,最后达到 O(T*(M+N)) 的复杂度还不行,还需要进行剪枝,break 或者

2017-03-14 01:02:43 621

原创 51Nod-1737-配对

ACM模版描述题解这个问题实际上是找树的重心,只要找到重心 dfs 遍历一遍求各个路径的权值,各点到重心的权值之和就是最大距离总和。至于怎么找重心,其实也是一遍 dfs,有固定的模版,代码不难理解。说以这个问题只需要先 dfs 一遍找到树的重心,然后再 dfs_ 一遍求各个点到重心的路径权值,最后,累加各个点的路径权值即可。代码#include <cstdio>#include <cstring>

2017-03-13 13:39:58 553

原创 树的重心

ACM模版添加于2017.3.8日树的重心typedef long long ll;typedef pair<int, int> pll;const int INF = 0x3f3f3f3f;const int MAXN = 100000 + 10;int n;/* 树的重心 * 初始化 vis[] son[] 为 0 * 初始化 sz 为 INF */int zx, sz;in

2017-03-08 17:59:17 858

原创 腾讯2017暑期实习生编程题-A-构造回文

ACM模版描述题解很久很久以前,大概是去年这个时候,在51上做过一道求原串如何删除才能使得回文串最长,输出最长长度。相比这个问题,不过是少了一步,只需再多一步总数-最长回文串长度即可,至于最长回文串长度只需要将原串逆序排列,然后求原串与逆序串的最长公共子序列即可,即 LCS 问题。代码#include <iostream>#include <algorithm>#include <cstring

2017-03-07 23:07:15 497

原创 腾讯2017暑期实习生编程题-B-算法基础-字符移位

ACM模版描述题解其实很简单的一道题,但是牛客网的测评系统有问题。给了两种代码,不知道第一种算不算违规,因为是直接遍历两边,先输出小写,再输出大写;第二种就是利用许多次交换实现真正的字符转移,由于不能申请额外的空间,所以没有使用第三方变量的方法交换数据,而是使用异或的方法搞搞。代码One://#include <iostream>//#include <string>////using nam

2017-03-07 22:59:59 436

原创 腾讯2017暑期实习生编程题-C-有趣的数字

ACM模版描述题解这个招聘实习生的编程题真心简单,可是我在牛客网上做的,莫名其妙的 WA,但是我思路肯定没问题啊,本地测试的样例也是过的,可是系统提示说我连样例都错了,这就尴尬了,感觉牛客网的测评系统好垃圾啊~~~首先排序,然后分别求最大数最小数出现的次数,然后根据乘法原理得差最大对儿数,接着,求相邻两个差最小的值,如果为0,说明存在重复数字,求重复最多的次数,然后根据等差数列求差最小对儿数,否则,

2017-03-07 22:50:38 525

原创 51Nod-1675-序列变换

ACM模版描述题解最开始拿到这道题,想半天只想到了暴力解题的思路,并不断尝试优化,但是始终无法AC,于是乎,百度了一下题解,发现需要用到一个我没有用过的数论知识——莫比乌斯反演,看来需要好好看看这个东西了。具体的题解官方给出了,十分详细,详细的我并不能完全悟透,还是看看代码吧。这里有两个代码,一个是我的智商所能达到的暴力解题思路(代码 One),另一个则是利用莫比乌斯反演得到的超牛逼的解法儿(代码

2017-03-07 20:56:07 583

原创 51Nod-1603-限高二叉排列树

ACM模版描述题解题目好长,长得我看了两遍都没有看懂,看来学理工科时间长了,语文水平有所下降。简单地说,也就是求 n 个结点所能构成的高度大于等于 h 的二叉树种数。典型的 dp 问题,设 dp[i][j] 表示 i 个结点且高度小于等于 j 的树个数,中间利用乘法原理合并树累加求各个状态结果,最后输出 dp[n][n] - dp[n][h - 1] 即可。代码#include <iostream>

2017-03-07 17:18:45 542

原创 51Nod-1557-两个集合

ACM模版描述题解我用的方法复杂度是 O(nlogn),快排+二分,思路挺简单,但是容易漏,要想全才行。这个问题也就是数对儿问题,x+pA=a 或者 x+pB=b。首先,我们只用分析 NO 的情况,其他的都是 YES,NO 的情况有两种: One:x 既不在 A 中,也不在 B 中,即找不到 a-x 和 b-x,NO; Two:x 既可以在 A 中,也可以在 B 中,也就是找到了 a-x 和

2017-03-06 23:04:24 634

原创 CF-Codeforces Round #210 (Div. 1)-A-Levko and Array Recovery

ACM模版描述题解像我这样的渣渣,怎么可能有 Div.1 的门票,完全是一个网友找我帮他参谋这道题,才有机会看 Div.1,这是一道有坑的问题,还好被我瞎猫逮着死耗子,碰对了。英文题,最让我头疼,还好网友给我大致翻译了一下,我第一结论,这是个逆向思维的问题,需要反推,但是,随后我就陷入了死胡同,怎么推啊?想来想去,还好我不是意志坚定的人,我放弃了逆向思维,想到了一个正向收缩区间的思路,给 a[i]

2017-03-04 00:38:24 540

原创 蓝桥杯-历届试题-PREV-13-网络寻路

ACM模版描述 题解很简单的一道题,但是前天上 java 课老师让我们练题,给大家出了一道这题,一看数据就知道这个一定是 dfs+邻接表,然而我没有跟着专业学 java,倒是主攻的 C/C++,所以写 C/C++ 版也就分分钟的事,可是写 java 版的我好心塞,java没有指针,猛一下不知道链表怎么写,我也不会用 java 的类库,java 满共学了十天不到,还是一年前自学的,倒是可以看懂,自己

2017-03-02 21:07:46 2207 8

原创 51Nod-1535-深海探险

ACM模版描述 题解题目好长,但是好简单的一道题,并且数据有些水了~~~这里实际上也就是给我们一个图判断是否只含有一个环,而只含有一个环连通图必然 n = m,所以,有的朋友只判断这个就 AC 了,这是数据太弱的缘故,正常的来,还需要判断一下是否是连通图,只有n = m的连通图才是合法的哦!代码#include <iostream>using namespace std;const int MAX

2017-03-02 13:15:13 508

EMACS 编辑器入门

EMACS 编辑器入门 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关注的人

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