- 博客(32)
- 资源 (2)
- 收藏
- 关注
转载 CCPC-Wannafly Winter Camp Day1 (Div2, onsite)补题总结
A:unsolvedB:DP数据范围非常的小,我们可以首先想到用动态规划来思考这道题,我们发现每个位置的糖果的数量都可以从上下左右和自己5个状态转移过来,也就是dp[i][j-1][k-1] -> dp[i][j][k]dp[i][j+1][k-1] ->dp[i][j][k]dp[i-1][j][k-1] ->dp[i][j][k]dp[i+...
2019-02-20 23:07:00 131
转载 Educational Codeforces Round 55 (Rated for Div. 2)A,B,C,D,E总结
A:这个鬼屎题,我真的没有发现x和y的大小关系是没有确定的,导致我疯狂wa,其实这道题也就是一道水题。代码:#include<bits/stdc++.h>using namespace std;#define inf 0x3f3f3f3fconst long long maxn=1e5+9;int main(){ long ...
2018-12-01 10:40:00 114
转载 STL中erase()小心使用 (转)
http://blog.sina.com.cn/s/blog_67b6b720010114d3.htmlerase()函数的功能是用来删除容器中的元素删除某个容器里的某个元素:c.erase(T);看似一个简单的动作,然而对不同类型的容器,内部却做了截然不同的事情,后面介绍。假设有这样一个题目,将某个容器中所有满足条件N == X的元素删除,...
2018-11-29 19:34:00 124
转载 线段树区间修改
再补个线段树区间修改的板子#include<bits/stdc++.h>using namespace std;#define inf 0x3f3f3f3fconst int maxn=1e5+9;struct node{ int lazy,val,l,r;}T[maxn*4];void pushup(int rt){...
2018-11-28 20:35:00 85
转载 线段树单点修改
写了这么久的线段树了,一直没有把以前写的线段树记下来,搞得每次一碰到线段树就又要手敲一遍#include<bits/stdc++.h>using namespace std;#define inf 0x3f3f3f3fconst int maxn=1e5+9;int T[maxn*4];void pushup(int rt){...
2018-11-27 21:47:00 150
转载 Codeforces Round #523 (Div. 2)总结
A题:水题,如果k能整除n,则输出k/n,否则输出k/n+1.代码:#include<bits/stdc++.h>using namespace std;#define inf 0x3f3f3f3fconst int maxn=1e5+9;int main(){ long long i,j,k,n; cin>&g...
2018-11-26 21:44:00 89
转载 简单求组合数(除法取模)
#include<bits/stdc++.h>using namespace std;#define inf 0x3f3f3f3fconst int maxn=1e5+9;#define LL long longint e_gcd(int a,int b,int & x,int &y){ if(!b){ ...
2018-11-10 20:27:00 179
转载 扩展欧几里德求逆元+通用除法取模
#include<bits/stdc++.h>using namespace std;#define inf 0x3f3f3f3fconst int maxn=1e5+9;int e_gcd(int a,int b,int &x,int &y){ if(!b){ x=1; y=0; return a; ...
2018-11-10 16:50:00 148
转载 带权并查集(种类并查集)的简单总结(顺带总结并查集)
并查集是一种树型的数据结构,一般用于处理一些不相交集合(Disjoint Sets)的合并及查询问题,对于普通的并查集我们一般分为三个部分——初始化,查找,合并。初始化:把每个点所在集合初始化为其自身(即每个元素单独构成一个集合,其父结点是其本身)。查找:查找元素所在的集合,即根节点。合并:将两个元素所在的集合合并为一个集合(注:当我们想对两...
2018-10-29 22:01:00 238
转载 Codeforces Round #519 by Botan Investments(A,B,C,D,E)
A:水题。题目大意就是找到最小的k使得n*k-sum>sum代码:#include<bits/stdc++.h>using namespace std;#define inf 0x3f3f3f3fconst int maxn=1e2+9;int a[maxn];int main(){ int i,j,k,n; ci...
2018-10-29 20:29:00 108
转载 HDU 4521小明系列问题——小明序列(线段树)
题目要求:给一段序列a,求满足每个元素在原序列里位置至少相隔k的最长上升子序列。这个问题我们有3种解决方法,LIS魔改算法,线段树,动态规划。在这篇博客中,我们讨论的是通过线段树来解决这个问题。我们将我们构造的树的叶子节点用来储存1到这一点的满足题目要求的最长上升子序列的长度,然后不断维护最大值。具体代码如下:#include<bi...
2018-09-03 20:44:00 91
转载 HDU 4521小明系列问题——小明序列(二分查找,LIS)
这篇博客的内容基本上都是观看一位大佬博客所得,所以内容基本一致,写下这篇博客也只是为了总结自己学习的收获。贴一下大佬博客:https://blog.csdn.net/a709743744/article/details/51765252题目要求:给一段序列a,求满足每个元素在原序列里位置至少相隔k的最长上升子序列。这道题可以用求最长上升子序列...
2018-09-02 22:08:00 141
转载 最长上升子序列
子序列:一段序列中选取一些位置递增(或递减)的元素作为子序列,如 {1,2,3,4,5,6,7,8,9}这一段序列,可以选取{1,3,5,8,9}作为子序列,也可以选取{1,2,4,7}作为子序列。最长上升子序列:子序列中的所有元素都是递增的,并且要求该段上升子序列,在所有的上升子序列中长度是最长的。我们想要求取一段序列的最长上升子序列,一般会有...
2018-09-02 15:39:00 65
转载 前缀和、二维前缀和与差分的小总结
在了解二维前缀和之前,我们首先需要了解一下什么是前缀和。如果我给你一串长度为n的数列a1,a2,a3......an,再给出m个询问,每次询问给出L,R两个数,要求给出区间[L,R]里的数的和,你会怎么做,若是没有了解过前缀和的人看到这道题的想法可能是对于m次询问,我每次都遍历一遍它给的区间,计算出答案,这样子的方法固然没错,但是其时间复杂度达到了O...
2018-08-17 16:22:00 139
转载 简单入门CDQ分治(很有意思的算法)
最近因为牛客暑期多校的一道题涉及到了CDQ分治,于是便去学习了一下CDQ分治。CDQ分治是以曾经的IOI选手陈丹琦命名的一种强大的算法,主要用于解决偏序问题,通过对一维进行排序(在这里说的总维度为二维),再对其它维度进行分治。再来讲讲CDQ分治的特点,普通分治是将原问题划分为若干个子问题,每个子问题相互独立且与原问题形式相同,递归求解子问题,最后...
2018-08-15 18:53:00 287
转载 HDU 2923 Einbahnstrasse(Floyd)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2923题目大意:你需要将C个车库的若干辆破车用拖车拖去公司,司机是一位娴熟的老司机,因此他知道如何走才能使总路程最短,而你需要做的就是输出这个最短路径。这道题我们需要注意的是它两个点之间是可能有重边的,而且这道题目还有一个隐藏条件,你每次用拖车将破车拖至公...
2018-06-17 20:22:00 83
转载 HDU 1217Arbitrage(Floyd,SPFA两种解法解析)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1217题目大意:这道我们需要判断能否套利,套利就是能否通过一系列的不同货币间的转换获利,因此我们可以将这道题转化为求最大路的题目,需要注意的是这道题当乘积小于1时,实际上是相当于加法里面的负权的,所以我们这道题不能使用dijkstra算法。这道题站点(也就...
2018-06-17 16:14:00 98
转载 HDU 1548 A strange lift(bfs或dijkstra)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1548题意:每层电梯对应着一个一个数k[i](i为这层电梯的层号),你可以选择UP或者DOWN,若选择UP则上升k[i]层,若现在DOWN则下降k[i]层,需要注意的是下降或上升之后的层数需在1-n之内。如何用dijkstra实现:若i层楼梯可以上...
2018-06-03 17:05:00 93
转载 HDU 1142 A Walk Through the Forest(dijkstra+记忆化搜索)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1142注意:这道题并不是求最短路的条数,而是求满足条件的条数(只要满足了条件,尽管到达家的路径不是最短的,但依然算是一条可行的路径),即找出所有满足一条路径的任意一条边A->B,A到终点的距离大于B到终点的距离的路径。我们现在已经清楚了题目的要求...
2018-06-03 13:28:00 3735
转载 HDU 1385 Minimum Transport Cost(dijkstra和floyd都可实现)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1385题目大意:啊,写题目大意好烦啊,不想写了。哎,还是写吧。这道题的意思就是给你所有城市到其他城市的道路成本和经过每个城市的城市税,给你很多组城市,要求你找出每组城市间的最低运输成本并且输出路径,如果有多条路径则输出字典序最小的 的那条路径。注意,起点...
2018-05-31 16:25:00 104
转载 HDU 1874畅通工程续(最短路水题)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1874题目大意:就是最简单的最短路,唯一需要注意的一点就是到达一个城市的路可能有多条,你要选取最短的那条。代码:#include<bits/stdc++.h>using namespace std;#define inf 0x3f3...
2018-05-30 19:36:00 87
转载 HDU 1175连连看(dfs记录方向+强力剪枝)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1175题目大意:与连连看类似,不过不同的是它不能从外面绕过去,这相当于降低了题目难度。需要注意的是,如果你在搜索过程中遇到了和起点位置一样的数,但它不是终点位置的话需要返回。代码:#include<iostream>#include&...
2018-05-30 00:38:00 173
转载 HDU 1072Nightmare(dfs记忆化搜索+剪枝)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1072题目大意:伊格内修斯身上的炸弹还有6分钟就要爆炸,他要想办法用最短的时间走出迷宫,0代表一堵墙,表示不可走,1代表没有任何东西,表示可走,2表示起点位置,3表示终点位置,4表示炸弹重置装置。这道题由于有了炸弹重置装置,所以存在着本来无法到达终点,但可...
2018-05-30 00:20:00 125
转载 HDU 1016Prime Ring Problem (回溯)
没什么状态,来写写博客吧题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1016题目大意:1到n个数,相邻的任意两个数之和为素数。由于相邻的两个数之和必须为素数,有且仅有可能有一个环的存在,那么只需要找到以1为第一个元素的所有可能排列就行了。代码:#include<bits/stdc++...
2018-05-30 00:00:00 89
转载 HDU 2112HDU Today(map+djkstra,一种挺有意思的组合)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2112题目大意:其实如果将车站编号从英文换成数字,那么这道题就是非常简单的最短路问题了,所以这道题的窍门就是想办法把英文编号转换为数字编号;这道题意思就是给你一个起始车站和终点车站,通过转车站得到起始车站到终点车站的最短距离,若不能到达则输出-1;上代...
2018-05-29 18:53:00 110
转载 HDU 2066一个人的旅行 (djkstra的简单运用)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2066题目大意:草儿家没有火车,只能通过相邻城市去往她想去的城市,且她想去的城市有很多,这就意味着起始点可以有多个,且终点也能有多个,你要从中选取一组最短的点。由于这道题并没有明确给定你所有城市的个数和编号,所以一个比较正确的选择是从1到1000全部遍历一...
2018-05-29 18:43:00 76
转载 HDU 2555 最短路(水题 floyd和djkstra都能过)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2544题目意思很简单,就是给你n+1个点,m条路径,你要找到从编号为1的点到编号为n的点的最短距离。先上floyd的代码吧。#include<bits/stdc++.h>using namespace std;const ...
2018-05-29 18:23:00 140
转载 L1-039. 古风排版 极其简单的AC代码
L1-039. 古风排版时间限制400 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者陈越中国的古人写文字,是从右向左竖向排版的。本题就请你编写程序,把一段文字按古风排版。输入格式:输入在第一行给出一个正整数N(<100),是每一列的字符数。第二行给出一个长度不超过1000的非空字符串,以回车结束。输出格式:按古风...
2018-04-16 21:43:00 109
转载 L1-005 考试座位号 C++实现
L1-005. 考试座位号时间限制200 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者陈越每个PAT考生在参加考试时都会被分配两个座位号,一个是试机座位,一个是考试座位。正常情况下,考生在入场时先得到试机座位号码,入座进入试机状态后,系统会显示该考生的考试座位号码,考试时考生需要换到考试座位就座。但有些考生迟到了,试机...
2018-04-16 21:25:00 189
转载 L1-005 考试座位号 C语言实现
L1-005. 考试座位号时间限制200 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者陈越每个PAT考生在参加考试时都会被分配两个座位号,一个是试机座位,一个是考试座位。正常情况下,考生在入场时先得到试机座位号码,入座进入试机状态后,系统会显示该考生的考试座位号码,考试时考生需要换到考试座位就座。但有些考生迟到了,试机...
2018-04-16 21:16:00 467
转载 HDU 1241 Oil Deposits 简单易懂的dfs
Oil DepositsTime Limit: 2000/1000 MS (Java/Others)Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 38968Accepted Submission(s): 22608Problem DescriptionThe G...
2018-04-15 11:34:00 61
转载 CCCC天梯赛总结
今年CCCC天梯赛是3月31号比的,我现在才反应过来自己似乎应该给这场比赛做个总结。3.31号,我来到北京参加比赛,怀揣着忐忑的心情,期盼着自己能取得自己心中能取得的成绩。我知道自己的水平是相当不到位的,毕竟我进入大学才接触编程,所以在来之前我就已经给自己定好了一个自己力所能及的目标,务必将比赛中L1的分全部拿到,L2的分能骗就骗,不能骗...
2018-04-13 00:13:00 274
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人