自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

逐梦者

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

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

原创 ACM模版-f_zyj v 2.0——更新通知

ACM模版距离 ACM模版-f_zyj v 1.1\text{ACM模版-f_zyj v 1.1} 版成工已经一年整了,这一年,我每次发现其中有不足时,都会在我在博客 ACM在线模版-f-zyj\text{ACM在线模版-f-zyj} 中对其进行更新,稀稀拉拉的一年过去了,我发现增删改的地方实在不少,所以总是有朋友问我什么时候会将这些更新整理到 PDFPDF 格式中……这个嘛,我总是一拖再拖,因为整

2017-09-03 16:51:15 4789 18

原创 51Nod-1618-树或非树

ACM模版描述 题解这是 CFCF 上的一道原题,没有啥思路,于是找来一下题解,找到了一个远古的博客(jasonzhu8’s blog),里面有这个题的题解,然而他的代码写得实在让我难受,并且有一点我不是特别理解,但是依然是大佬。大佬题解:这个题解的第一句我无法理解,题目中说给定一个 nn 点 nn 边的无向图,可是并没有说是 一棵树 + 一条边 啊,这么强的条件,我不理解该大佬从何悟出,难道说是

2017-09-29 16:56:33 505 3

原创 百练-2456-Aggressive cows

ACM模版描述题解二分 + 贪心。水题。代码#include <iostream>#include <cstdio>#include <algorithm>using namespace std;const int MAXN = 100002;const int INF = 0x3f3f3f3f;int N, C;int x[MAXN];bool check(int m){ int

2017-09-28 23:59:14 597

原创 事件轴-节点Three-第一笔工资

最近,我赚到了真正意义上的第一笔工资,还有些许的风投的意味。一学姐打算保研华东师范大学,但是苦于机试无法通过,于是在考试前一周,也就是 9.179.17 找到我,要我给她补习编程基础,为啥是基础呢,因为这个学校虽然是 985985,但是保研机试实在是水的不要不要的,虽然也有难题,但是水题实在太多,并且竞争力实在是小(或许这是华师被黑的最惨的一次)。虽然我最近在忙着准备区域赛事宜,但是因为保研重于准备

2017-09-28 23:41:45 744 1

原创 51Nod-1038-X^A Mod P

ACM模版描述题解第一次接触原根这个玩意儿,感觉真恶心,一脸懵逼啊……leader_win’s blog 讲得倒是十分详细,可是我依然懵逼着,数论真的恶心,太多太多╮(╯﹏╰)╭……代码#include <cmath>#include <vector>#include <cstdio>#include <iostream>#include <algorithm>using namespace

2017-09-28 19:42:18 481

原创 51Nod-1208-Stars in Your Window

ACM模版描述题解线段树 + 扫描线。把星星转化为矩形,把矩形转化成线段,然后求哪一条线段权值最大。具体的思路可以看看 光速小子0511’s blog,太强啦~~~代码#include <iostream>#include <algorithm>#include <map>#define lson (root << 1) + 1#define rson (root << 1) + 2using

2017-09-28 18:49:34 441

原创 NYOJ-417-死神来了

ACM模版描述题解典型的鸽巢定理,给定 1∼n1 \sim n 个数,如果取超过一半的数,则一定存在一个数是另一个数的倍数。这里具体需要注意的是,nn 如果是奇数时,这里的一半应该是向上取整的。大致就这样,代码很简单。代码#include <iostream>using namespace std;int n, m;int main(int argc, const char * argv[]){

2017-09-28 15:08:33 499

原创 51Nod-1617-奇偶数组

ACM模版描述 题解这个题的题意有些繁琐,看了好久才看懂。首先给定一个 1 n1~n 序列,要你进行一系列变换,直到没有变化后,然后对该序列进行区间查询。说起区间查询,很容易想到的就是线段树,可是这个题和线段树有一些差异,因为这个序列变化后是有规律的,划开奇偶看,分别是一个等差数列,所以我们需要处理出来等差数列的第一项就好了。剩下的区间查询就和线段树差不多了,不过不用建树,这倒是一个很有趣的变化。

2017-09-27 13:01:09 373

原创 51Nod-1203-JZPLCM

ACM模版描述题解这个题的解法好像好多好多,可以线段树解,自然也可以用树状数组解,还有大佬直接莫队推过,我这里用的树状数组搞得。首先将数进行拆解,拆成素数积的形式,每次访问时,都需要获取该区间所有出现过的素数所出现的最高次,这些数的乘积便是答案。这里我们应该进行离线操作,将所有的访问都进行排序,维护每一个特征值下一个相同的位置,从左向右扫描一遍,解决每个点作为左端点的询问。大致就是这样,很好的一个题

2017-09-26 17:36:48 347

原创 HDU-1695-GCD

ACM模版描述题解莫比乌斯反演入门题,给大家推荐一个写的十分详细的博客,由浅入深,大赞!__proto__’s blog,让我更加清晰的认识了莫比乌斯反演的用处,感谢大佬!代码#include <iostream>#include <cstring>#include <cstdio>using namespace std;const int MAXN = 1e5 + 7;int a, b, c,

2017-09-26 12:38:30 366

原创 51Nod-1615-跳跃的杰克

ACM模版描述题解这个题代码炒鸡简单,只要想通了就好了。这里我们贪心的想,尽量向靠近的方向跳,如果跳过了,我们考虑超过的距离是奇数还是偶数,如果是偶数,那就很好办了,可以通过使步长为 (now−n)>>1(now - n) >> 1 这一步向远离的方向蹦去,就刚好能到达 nn,如果是奇数,那就也好办,继续向原来的方向跳去,直到超过的步长是偶数即可,剩下的就同上了。今天虽然眼疾手快,抢了一个银,但是还

2017-09-25 11:57:31 1985 1

原创 HDU-2588-GCD

ACM模版描述题解枚举 NN 的大于等于 MM 的约数 xx,这样,gcd(N,x)≥Mgcd(N, x) ≥ M,最后的结果为所有 N/xN / x 的欧拉函数之和。设 y=N/xy = N / x,欧拉函数是小于 yy 并且与 yy 互质的数的个数,这样 gcd(x∗pi,N)gcd(x * p_i, N) 依然是等于 xx 的,这样就能避免重复计算。代码#include <stdio.h>#

2017-09-25 10:00:09 439

原创 51Nod-1249-近似有序区间

ACM模版描述题解这个题用线段树可解,奇思妙想啊~~~首先我们可以很容易理解的是,SS 序列的图像可以抽象为锯齿状,我们需要将注意力放在上齿,例如:S=1,2,3,2,3,4,1,2,5S = {1, 2, 3, 2, 3, 4, 1, 2, 5},这里的 1,2,3、2,3,4、1,2,5{1, 2, 3}、{2, 3, 4}、{1, 2, 5} 就是上齿。然后我们需要考虑将这个序列分解为 NN

2017-09-25 07:40:06 593

原创 51Nod-1443-路径和树

ACM模版描述题解这个题是单源最短路 + 最小生成树。首先我们来介绍一下题中所述的最短路径树是什么,我们都知道,给定一个 uu 求单源最短路时,所有的最短路路径通常能够恰好构成一棵树,那么这棵树就是最短路径树。可是我们这里为什么还要用最小生成树呢?这很容易理解,前文我提到,通常可以构成一棵树,那就自然有不通常的情况,如果从 uu 到达一个结点 vv 的最短路径不唯一呢?所以我们应该获取所有的最短路径

2017-09-24 12:40:57 805

原创 51Nod-1671-货物运输

ACM模版描述题解官方题解:首先我们需要注意到最重要的一点,所有运输方案同时进行,我们只需要计算最后到达的方案的花费时间的最小值。所以我们需要考虑的是一个极限情况,在这个极限情况下,其他运输方案全部是在允许范围内的。所以我们可以二分枚举这个极限情况,判断所有方案是否都在这个极限内,在的话就继续缩小极限,不在的话就放大极限。至于这个极限呢,涉及到传送门的位置,我们可以将传送门的位置标记为两个区间,初始

2017-09-23 15:29:00 1052 1

原创 51Nod-1149-Pi的递推式

ACM模版描述题解这个题最后结果的意义其实就是从 nn 开始,可以选择 −1-1 或者 −PI-PI,最终到达 [0,4][0, 4] 的方案数模 MODMOD 的结果。稍微转化一下变成从 00 开始,可以选择 +1+1 或者 +PI+PI 两种一直加到不小于 n−4n - 4 为止的所有方案数,所以这里我们需要考虑两种情况,在最后不小于 n−4n - 4 这个临界值时的操作是什么,自然是有两种:

2017-09-23 13:45:15 377

原创 51Nod-1612-合法表达式

ACM模版描述题解我们需要考虑到能够加多少括号以及加括号的动态规划过程,这里格外要注意一个问题,就是初始字符串不合法,并且无论怎么加都不合法的情况,比如 5//45//4,这是真实存在的一组样例,是第三组样例,结果应该输出 00。代码#include <cstdio>#include <cstring>using namespace std;const int MAXN = 3e5 + 10;c

2017-09-22 18:56:13 392

原创 HDU-1847-Good Luck in CET-4 Everybody!

ACM模版描述题解这里用 SGSG 函数处理一下就好了,注意要先初始化 f[]f[],否则直接获取 SG[]SG[] 时会出错,我就是因为忘了初始化,最后 SG[]SG[] 全部变成了 SG[i]=iSG[i] = i。很神奇的一个 SGSG 函数,可以打表,也可以 dfsdfs 求。代码#include <iostream>#include <cstring>using namespace st

2017-09-22 10:54:56 438

原创 HDU-1850-Being a Good Boy in Spring Festival

ACM模版描述题解博弈论,NimNim 游戏,不过最后要求输出想赢的话,第一步的方案数,这个也不难搞,就是判断最开始哪一堆可以取,然后使局面达成奇异局。具体看代码吧,代码很简单,关键是不容易想到。博弈论十分绕得人。代码#include <iostream>#include <cstring>using namespace std;const int MAXN = 111;int n;int an

2017-09-21 19:10:39 451

原创 HDU-2516-取石子游戏

ACM模版描述题解NimNim 游戏中的斐波那契数列游戏,判断 nn 是否为斐波那契数即可。代码#include <iostream>using namespace std;const int MAXN = 50;int n;long long fib[MAXN] = {0, 1, 1};void init(){ for (int i = 3; i < MAXN; i++) {

2017-09-21 18:38:30 1061

原创 HDU-1846-Brave Game

ACM模版描述题解BASHBASH 裸题,没啥可说的。代码#include <iostream>#include <cstdio>#define _MAX 1111int a[_MAX];int b[_MAX];int bash(int N, int K){ if (N % (K + 1) == 0) { return 2; } return 1

2017-09-21 15:48:56 526

原创 51Nod-1661-黑板上的游戏

ACM模版描述题解很少见官方题解如此长篇大论(详细):另外看到一个比较好的博客,讲得也十分详细,代码也十分的好,WildKid1024’s blog,由浅入深,赞一下。代码#include <iostream>#include <cmath>using namespace std;typedef long long ll;const int MAXN = 1e5 + 5;const int MA

2017-09-20 20:16:57 468

原创 51Nod-1232-完美数

ACM模版描述题解这里要求数的值整除以所有位的值,除 00 以外,所以也就很容易想到,这个数一定是要整除这些位数的最小公倍数,而这些数范围是 1∼91 \sim 9,所以最小公倍数最大也就是 25202520,记录数对 25202520 的余数即可,并且这里由于公倍数的数量很少,不超过五十个,所以先离散化一下优化优化,剩下的就是典型的数位 dpdp 了。代码#include <iostream>#

2017-09-20 19:14:17 649

原创 HDU-2017 ACM/ICPC Asia Regional Qingdao Online-补题

ACM模版最近打比赛总是不顺利,各种莫名其妙的 WA、TLE、REWA、TLE、RE……真尴尬,这次比赛第十题,秒出的题解,可是一直无法 ACAC,始终卡死在了 TLETLE,搞得我很头疼。还好这次成功水到了名额,能去现场赛混波经验……1001-Apple>>>大浮点数 + 计算几何<<< 这个题并不轻松,如果不会 JavaJava 的话。1003-The Dominator of Strings>

2017-09-19 00:49:53 614 2

原创 HDU-2017 ACM/ICPC Asia Regional Qingdao Online-1009-Smallest Minimum Cut

ACM模版描述题解原题,直接拷贝代码,改都不用改,就能 ACAC。代码#include <iostream>#include <cstdio>#include <cstring>using namespace std;typedef long long ll;const int MAXN = 10000;const ll INF = 1ll << 60;const int MOD = 100

2017-09-19 00:38:15 514

原创 HDU-2017 ACM/ICPC Asia Regional Qingdao Online-1008-Chinese Zodiac

ACM模版描述题解string+mapstring + map 搞搞就行了,签到题。代码#include <iostream>#include <map>#include <string>#include <cmath>using namespace std;string s1, s2;map<string, int> msi;int main(){ msi["rat"] = 1;

2017-09-19 00:26:10 594

原创 HDU-2017 ACM/ICPC Asia Regional Qingdao Online-1011-A Cubic number and A Cubic Number

ACM模版描述题解上 oeisoeis 可以查到这个 YESYES 的数列,这个数列的每一项都是素数,并且可以化成如下:p=(a+b)3−b3p = (a + b)^3 - b^3 所以最后可以通过判断 p==i3−b3p == i^3 - b^3 枚举 ii 二分 bb 即可。代码#include <cstdio>#include <algorithm>#include <iostream>u

2017-09-18 13:34:51 458

原创 HDU-2017 ACM/ICPC Asia Regional Qingdao Online-1003-The Dominator of Strings

ACM模版描述题解理论上直接 stringstring 就是完全可以的啊,不知道为啥一直 WAWA 和 TLETLE,解绑定也不行,最后我只好用 char[]char [] 来读取输出,十分纳闷儿啊……不是特别理解之前为啥一直 WAWA 和 TLETLE。代码#include <cstdio>#include <cstring>#include <string>#include <iostre

2017-09-18 13:27:06 654 2

原创 HDU-2017 ACM/ICPC Asia Regional Qingdao Online-1001-Apple

ACM模版描述题解平面几何 + 大浮点数……很恶心啊……用 javajava 写会容易些。给定三个点,然后判断第四点是否在这三个点的外接圆内。代码import java.math.BigDecimal;import java.util.Scanner;class Util { public static BigDecimal calR(Dot a, Dot b) { ret

2017-09-18 13:21:39 613

原创 HDU-2017 ACM/ICPC Asia Regional Qingdao Online-1010-Brute Force Sorting

ACM模版描述题解这个题真心不难,典型的链表题,在 51Nod51Nod 上见过好多次同类型的题,可是我竟然无限 TLETLE……至今未找到 bugbug,在网上找了一份 ACAC 代码,发现他的方法比我的还要多很多操作,感觉比我的还慢啊,可是人家竟然 ACAC 了……很诧异啊……算了,两个代码都贴一下吧,希望大佬们可以看出我的 TLETLE 的尿点……代码One:// TLE#include

2017-09-18 13:16:22 729 3

原创 51Nod-1526-分配笔名

ACM模版描述题解这个问题我们需要先建立 tiretire 树,然后开始爬数据,名字的话加加,笔名减减,如果笔名减减时,对应的值是正值,则说明刚好完全匹配,那么就直接加上长度即可,剩下的就是不能完全匹配的,所以我们可以通过 dfsdfs 来寻找匹配度最高的进行匹配,但是这里有一个问题就是爆栈,因为数据中会有一组深度很大的数据,我这里是通过作弊手段,看数据特判过的,正规的解法应该是通过将深搜转换为广搜

2017-09-15 18:04:01 389

原创 51Nod-1430-奇偶游戏

ACM模版描述题解一看就是博弈论,但是一开始没有想通是什么思路,后来发现,这个最后的奇偶性其实就和最后留下来的数中奇数的个数有关,所以我们只需要判断一下谁会对最后的奇数个数有决定性影响即可。那么首先我们需要累计出奇数城市和偶数城市的个数以及先手和后手出手次数,这样,结合所需要保留的城市数,我们可以分为大致三种情况,只剩下奇数城市,只剩下偶数城市,剩下的城市奇数偶数都有。对于第一种情况,我们只需要根据

2017-09-15 16:18:55 359

原创 51Nod-1184-第N个质数

ACM模版描述题解这个题着实有些难受,多数人解法都是用二分 + 洲阁筛过的,可是我用大佬们的代码提交总是 TLE,莫名其妙的,我想大概最后五组数据是后来加上去的,想要卡掉这个解法?不得而知了,但是这个解法倒是可以卡过去,特判一下 n,对 n 很大时进行略微调控二分时的 l 和 r 能卡过。大佬们可以去看看 L_0_Forever_LF 和 Facico 两位大佬的博

2017-09-14 15:54:36 516

原创 51Nod-1074-约瑟夫环 V2

ACM模版描述题解约瑟夫环问题在《具体数学》一书上讲得十分详细,这里我们用函数法来解它,模板题。代码#include using namespace std;unsigned long long n, k;int main(){    cin >> n >> k;        long long y = k % 2;

2017-09-14 14:44:43 629

原创 51Nod-1952-栈

ACM模版描述 题解像这种问题,很明显是单调栈,不过这里的单调栈有些差异,因为栈本身不是正常的栈,出只能尾出,入则可以首尾入,那么维护单调栈时,我们一样无法只从一个方向进行维护,但是可以肯定的是我们只需要维护一个加强版单调栈就好了。这里维护一个单调递增栈,当加入操作是从尾部加入时,我们从单调递增栈的栈顶进行添加,不过添加规则是大于栈顶方可添加;当加入操作是从头部加入时,我们从但带哦递增栈的栈底进行

2017-09-13 20:36:15 483

原创 51Nod-1753-相似子串

ACM模版描述题解字符串哈希问题,代码小长……给大家贴一下我佐学姐题解以及他的代码吧……好崇拜学姐。代码#include <algorithm>#include <cstring>#include <cstdio>#include <cmath>using namespace std;const int MAXN = 3e5 + 10;typedef long long ll;const ch

2017-09-13 19:51:37 403 3

原创 51Nod-1122-机器人走方格 V4

ACM模版描述题解最开始看这个题,半天没有看懂样例,后来发现原来这里的走一步是指四个机器人同时走一步,于是乎,这个可以用矩阵快速幂来解决,毕竟这种套路的题核心就是构造可达矩阵……至于可达矩阵的构造方案,有很多种,但是都是相似的,可以看看讨论区中大佬的构造方案,剩下的就么有啥可说的了。这个忘了说一点,最开始提交只过了两组,其他都 WAWA 了,仔细查看代码发现是自己存在溢出问题,一个十分常见的问题,在

2017-09-12 23:27:11 407

原创 母函数

ACM模版母函数/* * 母函数 * c1是保存各项质量砝码可以组合的数目 * c2是中间量,保存每一次的情况 */const int MAXN = 1e4 + 10;int n;int c1[MAXN];int c2[MAXN];int main(){ while (cin >> n) { for (int i = 0; i <= n; ++i

2017-09-12 18:09:25 902

原创 容斥

ACM模版dfsconst int MAXN = 1111;int n;double ans;double p[MAXN];void dfs(int x, int tot, double sum) // dfs(1, 0, ?){ if (x == n + 1) { if (sum == 0.0) { return

2017-09-12 17:48:37 854

原创 HDU-2017 ACM/ICPC Asia Regional Shenyang Online-1001-string string string

ACM模版描述题解后缀自动机……我知识的盲区,学过 ACAC 自动机,后缀数组,等等算法,就是没有学过这个……怪不得做不出来。建立后缀自动机后,对每个节点统计出现次数,然后对字符串的后缀进行加一,更新每个节点的父节点就好了。代码#include <iostream>#include <cstring>using namespace std;typedef long long ll;const in

2017-09-12 16:57:21 416

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关注的人

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