- 博客(44)
- 收藏
- 关注
转载 【模板】AC自动机(洛谷3808&洛谷3796)
清明时节雨纷纷,省选只能当路人。最近在狂补算法,AC自动机还是比较难理解。找到了洛谷日报上比较容易理解的版本,才勉强理解。https://www.luogu.org/blog/42196/qiang-shi-tu-xie-ac-zi-dong-ji千万记得前置技能trie树和KMP!我博客里也有有关KMP的感想。(顺带安利一发https://www.cnblogs.com/Ni...
2019-03-19 21:13:00
121
转载 【模板】KMP与MP的区别(洛谷P3375)
学KMP的时候巨佬说我这写的是MP,仔细去查了查资料,才发现了区别。洛谷这道题用KMP是解决不了的,KMP的nxt数组和MP的nxt数组略有不同。https://www.cnblogs.com/yjiyjige/p/3263858.html这位大佬写的过程很清楚,但是程序不是怎么看得懂,而且实际放到洛谷的题上测应该也是过不了的(应该。直接放程序8#include<bits...
2019-03-18 19:50:00
251
转载 【全网最高端】中缀表达式转为后缀表达式以及求值(可用于负数,阶乘,高精度)...
代码里有注释。。。直接上代码。。。#include<bits/stdc++.h>#define rep(i,k,n) for(int i=k;i<=n;i++)#define per(i,n,k) for(int i=n;i>=k;i--)#define pii pair<int,int>#define pb push_back#defin...
2018-10-17 09:32:00
203
转载 Codeforces 514C. Watto and Mechanism解题报告(字典树)
传送门题意:给你一个字典和一些询问,问你对于每个询问的字符串必须更改一个字符,能否得到字典中的某一个单词。思路:先构造一颗字典树,然后搜一遍就行了,要注意strlen不能每次都用,常数很大!#include<bits/stdc++.h>#define rep(i,k,n) for(int i=k;i<=n;i++)using namespace std;co...
2018-10-03 14:29:00
93
转载 URAL 2011. Long Statement题解
传送门题意:有N个为1或2或3的数,问用这N个数的排列方式是不是有6中以上。思路:降智题,显然六个数以上无论这六个数是怎么组成,只要有两种数字就一定能组成6种,5种及以下我就懒得找规律了,直接全排列统计。AC程序using namespace std;const int maxn=105;int a[maxn],n,ans;set<int> se;map...
2018-08-12 14:56:00
112
转载 Codeforces 883D. Packmen Strike Back(二分+DP)
传送门题意:一条长为n线上有几个吃豆人和几个豆子,你可以控制吃豆人的移动方向,选定方向之后吃豆人便会一直向这个方向走,问能吃到的最大豆子数和为了达到这个目标所需的最少时间。思路:最大的豆子数量其实就是所有的豆子,唯一有个特例就是只有一个人,有两个人以上的话,不难想出只要两人面对面走就能吃到所有豆子了,所以先处理只有一个人的情况。void straight(){ int...
2018-08-11 14:43:00
88
转载 Codeforces 292C. Beautiful IP Addresses解题报告(Brute Force)
传送门题意:给你N个数,求符合标准ip地址规则的所有ip地址,要求每个数都至少用一次。思路:暴力dfs一位一位向后加数,我用的位运算判断是否使用过和mask比较,dfs到最后一位加点,然后把答案存起来最后输出就ok了(简称暴力)AC程序//库省略using namespace std;vector<string> ans;int mask,n;bool c...
2018-08-10 11:19:00
83
转载 Codeforces 666B. World Tour 解题报告
传送门题意:一个有N个定点M条边的有向图,dist[i][j]表示从i到j的最短距离,每条边的长度皆为1,请你给出有序的四个点a,b,c,d,使dist[a][b]+dist[b][c]+dist[c][d]最大。思路:先用SPFA处理最短路是显然的,然后就是怎么选择点的问题,既然要和最大,那么肯定是两两个点之间的距离最大,那么我们可以预处理出每个点距离最远的点,然后只暴力中间两个...
2018-07-24 10:27:00
104
转载 POJ 3538/Codeforces 100078D:Domestic Networks 解题报告
点击这里进入题目题意:有N个顶点M条边,每一条边都有相应的长度,你有长度为5和长度为6的线,你要用它来覆盖这些边,使花费最小。思路:一个图上要求最小的花费,很明显要先处理最小生成树AC程序//库省略using namespace std;const int maxn=10005;int n,m,k;int fa[maxn];int mst[maxn];int nu...
2018-07-20 15:42:00
103
转载 Codeforces 269D. Maximum Waterfall解题报告
点击这里进入题目题意:在一面墙上有几块木板,给你木板在前面上的高度,左端点,右端点,你可以控制水流的方向,水流能从上面的木板流向下面的木板需要两个木板在高度上有相交以及中间没木板隔开,问最大的水流量。思路:先用一个vector,将左端点和右端点拆开记录,同时标清楚是哪一块木板,高度在哪,以及是左端点还是右端点,然后按照从左到右的顺序排序。然后遍历这个vector,遇到左端点就将这块木...
2018-07-20 15:25:00
88
转载 Codeforces 95E Lucky Country解题报告
点击这里进入题目题意:有N个国家,每个国家之间一共有M条无向路。国家会由路连成一个个联通块,然后问你要最少添加几条边,使最大的联通块的点的个数为一个幸运数(只包含4或7的数)。思路:首先要做的肯定是处理联通块,可以用dfs或并查集,把每个连通块的大小都记录下来,这时候假如把每一个作为一个单独的来处理会很慢,我们要做的是把相同大小的放在一起,记录相同大小联通块的数量,再整体dp。AC...
2018-07-20 15:09:00
117
转载 Codeforces 460C Present(二分+线段树)
点击这里进入题目题目大意:给你n个数,可以做出m次修改,每次修改一个长度为w的区间,给这区间每一个数字加一,问修改后数组中最小值的最大值。思路:看到区间修改和十的五次方的数据范围,很难想不到线段树,再看到最小值的最大值,也很难不想到二分,那么就直接二分最后的答案,然后用线段树维护check即可。AC程序://库省略usi...
2018-07-08 13:29:00
116
转载 Codeforces 371C Hamburgers(二分基础题)
点击这里进入题目题目大意:给你一个字符串表示一个汉堡的结构,一个汉堡由BSC三个字母组成,然后给你你有的BSC原料的数目,和如果要购买BSC的价格。告诉你你所拥有的金钱,问最多能做出几个汉堡。思路:很明显这符合单调性,可以直接二分出能做几个汉堡,check也很好写,基本是个二分模板题。AC程序://库省略using na...
2018-07-08 13:24:00
282
转载 Atcoder JAG Practice Contest for ACM-ICPC Asia Regional 2012 B - Texas hold 'em(巨型模拟)
点击这里进入题目作者的话:同学们,我这个方法真的是算烦的,标称只有我的四分之一,但是假如你要深入理解题目我推荐我的程序,假如只是为了图个“方便”,还是别看了。题目大意:根据德克萨斯扑克的规则,有五张牌应该是明牌,但是此时只明了三张,告诉你你的两张手牌,三张明牌,和对手的三张明牌,求你获胜的概率。思路:模拟。模拟所有情况,一一对比,典型的思路简单,程序爆难,我大概调了两天。。。...
2018-07-06 15:23:00
179
转载 2017普及组第三题 洛谷P3957 跳房子(解题报告)
点击这里进入题目 中文题我就不解释题意了。思路:很明显这个棋盘很小,只有10000个格子,那么n平方的算法就能过了,那就直接dfs暴力,可以加一个小优化,如果当前使用的钱币已经大于之前所算的最小钱币数,就不继续往下算了。程序using namespace std;const int dx[]={-1,0,1,0},dy[]={0,-1,0...
2018-07-04 11:25:00
162
转载 AtCoder Regular Contest 100 E:Or Plus Max(DP+位运算)解题报告
这题对于我来说是真的难。。。点击这里进入题目题目大意:言简意赅。2的N次方个数,存为Ai,令1≤K≤2的N次方−1,请你求出(i,j),使Ai+Aj最大,并且0<=i< j<=2的N次方-1且(i or j)≤K。输出Ai+Aj的最大值。思路:这一题长得是真的不像DP。 这道题虽然言简意赅,但大部分都是为了严谨,我们最...
2018-07-02 17:38:00
155
转载 AtCoder Regular Contest 100 D:Equal Cut(前缀和优化暴力)解题报告
点击这里进入题目题目大意:依旧言简意赅。给你N个数存为Ai,切三刀,分为四组,每一组的和为b·c·d·e,要求这四个数的极差(最大数和最小数的差)最小,输出这个最小值。题目思路:看一眼数据范围就可以不用想纯暴力了。这个题我一开始也想了很久,但我后来仔细一看,发现是切三刀,而不是分为四组,要求每一组的数在数组里都是连续的,那就变得简单多了。先预处理...
2018-07-02 16:59:00
98
转载 AtCoder Regular Contest 100 C:Linear Approximation解题报告
点击此处打开题目 题目大意:这次比赛所有的题目都描述的很简单,我这种英语不好的也能一看就懂。给你N个数存为Ai,请你给出一个b,使abs(A1−(b+1))+abs(A2−(b+2))+…+abs(AN−(b+N))最小,输出这个最小值。思路:一看到绝对值,就应该想到数轴上点之间的距离,这道题虽然给b加上了i,但只要把式子拆开,一开始就把每个Ai减...
2018-07-02 16:48:00
80
转载 2015NOIP普及组第四题求和满分解法
经过两年再写这道题,还是能感到水平的提升的(你一直都很弱好吗)题目描述一条狭长的纸带被均匀划分出了n个格子,格子编号从1到n。每个格子上都染了一种颜色color_i用[1,m]当中的一个整数表示),并且写了一个数字number_i。定义一种特殊的三元组:(x,y,z),其中x,y,z都代表纸带上格子的编号,这里的三元组要求满足以下两个条件...
2017-11-09 23:53:00
206
转载 计蒜客NOIP提高组模拟Day2,Pro1蒜头君的兔子
https://nanti.jisuanke.com/t/16442 中文题不讲题意。。。只要看一眼数据范围就知道暴力模拟是肯定不行的,我们就来想一想其他方法。 这题现场也没有满分解法。。。试后得知正解是矩阵乘法,就又跑去复习了一遍矩阵乘法,其实也是很好理解的。 因为一到十岁就会死,所以一共只有十种年龄,把他们都压进一个单列矩阵(单行也行)...
2017-07-30 21:52:00
108
转载 7.24每日总结《我能怎么办我也很绝望啊》
今天又被布置了三道题。 100342D 100342F 100342G 只做了100342D,高精度居然还能写错。。。然而还没调对。。。 这题就是高精度+简单dp 错误代码,仅作记录。。。using namespace std;const int maxn=410;struct bign{ int siz,s[maxn],f...
2017-07-24 22:08:00
77
转载 Treap模板+Treap介绍C++
reap 是一种平衡树。Treap 发音为[ ]。这个单词的构造选 取了 Tree(树)的前两个字符和 Heap(堆)的后三个字符,Treap = Tree + Heap。顾名思义,Treap 把 BST 和 Heap 结合了起来。它和 BST 一样满足许多优美的性质,而引入堆目的就是为了维护平衡。以上是基本的介绍,具体一点是这样,Treap 可以定义为有以下性质的二叉树...
2017-07-23 23:38:00
172
转载 POJ 1442 Black Box (Treap)
http://poj.org/problem?id=1442 题意:每次操作插入一个数或者GET一个数,每次GET出的是第K大的数,K在每次GET后都要加一。 题解:其实完全可以不用Treap做,为了训练一下就用Treap写了。using namespace std;vector<int> v;struct Treapnode...
2017-07-23 23:25:00
92
转载 AtCoder Grand Contest 018 A Getting Difference(比较水。。。)
http://agc018.contest.atcoder.jp/tasks/agc018_a 题意:给你N个数,每次取出两个数,再把他们差的绝对值连同这俩数扔进去,求能不能得到K。 题解:第一种情况,K膜这些数的GCD不为零是肯定做不到的,想一想就知道了嘛。。。第二种K大于最大的数也是做不到的,其他情况都可以做到。。。//库省略using...
2017-07-23 23:17:00
102
转载 Codeforces 816B & 816C & 816D Karen and ......(不正经专场)
主要不是为了写816B和816C的,主要是为了做个记录。 http://codeforces.com/problemset/problem/816/B http://codeforces.com/problemset/problem/816/C 一次提交,6.25日模拟。 http://codeforces.com/problemset/prob...
2017-07-01 22:22:00
101
转载 Codeforces 776B & 776C 程序(夏洛克专场)
这里直接贴我的程序,题目和思路另翻博客B. Sherlock and his girlfriend`//// main.cpp// journey//// Created by zhangdenny on 2017/3/4.// Copyright © 2017年 Kirito. All rights reserved.//...
2017-03-17 13:13:00
233
转载 Codeforces GYM 100738C Rating Shuffle
传送门:http://codeforces.com/gym/100738/problem/Cac程序://库省略#define ft first#define sd second#define np next_permutation#define ll long long#define pb push_backusing na...
2016-08-08 23:01:00
60
转载 codeforces 527C Glass Carving
传送门:http://codeforces.com/problemset/problem/527/C 题目大意:你有一块玻璃,你可以横切(H)或者竖切(V),问你在每一步的时候这块玻璃上最小的那一块是什么。 解题思路: 你需要set以及mutiset来维护长度以及切的地方,然后暴力(手动滑稽)。 ac程序//// main.cpp/...
2016-07-17 21:41:00
101
转载 codeforces 234E Champions' League
传送门:http://codeforces.com/problemset/problem/234/E 题目大意:(注意要用文件)有n个队伍,每个队伍都有一个积分,按照积分高低顺序列出4个等级(每个等级n/4个,所以n一定是4的倍数),然后x,a,b,c这4个数就是一个随机数产生器,按照x=(x*a+b)mod c的规则来生成随机数,每生成一个随机数,便...
2016-07-17 21:14:00
96
转载 codeforces 680C Bear and Prime 100
这烂题我居然交了3遍。 传送门: http://www.codeforces.com/problemset/problem/680/C题目原文:C. Bear and Prime 100 time limit per test1 second memory limit per test256 megabytes inputstand...
2016-07-03 15:44:00
118
转载 codeforces gym 100645A
将以前写过的一些程序搬运一下。 codeforces挂了,只能看到我的代码,不要怪我。AC代码//// main.cpp// A.a.c//// Created by zhangdenny on 16/5/22.// Copyright (c) 2016年 Kirito. All rights reserved.//...
2016-07-03 15:36:00
75
转载 codeforces gym 100827A Runes
acing…..还没有ac呢,写个中途报告 传送门: http://codeforces.com/gym/100827/attachments/download/3892/pacific-northwest-region-programming-contest-2014-div-1-en.pdf题目大意 意思就是给你几个带有问号的算...
2016-07-03 15:26:00
130
转载 几何原本查询程序2.5
此版本修改了2.0版本的bug//// main.cpp// 几何原本配套程序//// Created by zhangdenny on 16/3/14.// Copyright (c) 2016年 Kirito. All rights reserved.//#include <functional>#incl...
2016-03-16 22:40:00
56
转载 几何原本查询程序2.0
和前一个版本有大不同,完善了三要素,增设了英文和指令错误系统。//// main.cpp// 几何原本配套程序//// Created by zhangdenny on 16/3/14.// Copyright (c) 2016年 Kirito. All rights reserved.//#include <fu...
2016-03-15 22:02:00
74
转载 NOIP2011普及组统计单词数
题目描述 一般的文本编辑器都有查找单词的功能,该功能可以快速定位特定单词在文章中的位 置,有的还能统计出特定单词在文章中出现的次数。 现在,请你编程实现这一功能,具体要求是:给定一个单词,请你输出它在给定的文章 中出现的次数和第一次出现的位置。注意:匹配单词时,不区分大小写,但要求完全匹配, 即给定单词必须与文章中的某一独立单词在不区分大小写的...
2016-03-15 21:37:00
514
转载 分数线划定
题目描述 世博会志愿者的选拔工作正在 A 市如火如荼的进行。为了选拔最合适的人才,A 市对 所有报名的选手进行了笔试,笔试分数达到面试分数线的选手方可进入面试。面试分数线根 据计划录取人数的150%划定,即如果计划录取m名志愿者,则面试分数线为排名第m*150% (向下取整)名的选手的分数,而最终进入面试的选手为笔试成绩不低于面试分数线的所有 ...
2016-03-15 21:35:00
149
转载 Chat Server's Outgoing Traffic(求助文)
小波正在做一个多方聊天的项目。小波在他的笔记本前已奋战好几个小时了,并且已开发了一个可以执行三种类型指令的程序: 包括一个聊天者(’Add’指令)。 从聊天中删除一个人(‘Remove’指令)。 将一个人的信息传给所有聊天成员、包括信息发出者(’send’指令) 现在小波想要知道当一系列正在执行中的指令在服务器中产生的流量的总和。 小波...
2016-03-15 21:32:00
66
转载 poj 1182食物链
食物链解题报告Time Limit: 1000MSMemory Limit: 10000KTotal Submissions: 49377Accepted: 14404 这一道题是我用了五天做出来的,题目如下: Description动物王国中有三类动物A,B,C,这三类动物的食物链构成了有趣的环形。A吃B, B吃C,C吃...
2016-03-15 21:29:00
49
转载 几何原本查询程序1.0
//// main.cpp// 几何原本配套程序//// Created by zhangdenny on 16/3/14.// Copyright (c) 2016年 Kirito. All rights reserved.//#include <functional>#include <algorith...
2016-03-14 20:36:00
68
转载 code forces 548C:Mike and frog
C. Mike and Frog time limit per test1 second memory limit per test256 megabytes inputstandard input outputstandard output Mike has a frog and a flower. His frog is named Xan...
2016-03-12 11:58:00
56
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人