- 博客(56)
- 收藏
- 关注
原创 制作测试数据
#include <bits/stdc++.h> using namespace std;int a[100];int main(){ freopen("C:\\Users\\DELL\\Desktop\\01.txt", "r", stdin); freopen("C:\\Users\\DELL\\Desktop\\02.txt", "w", stdout); /...
2018-05-31 17:36:30 650
原创 Sliding Window POJ - 2823 (DP的单调队列优化)
Sliding Window 题目连接:POJ - 2823 题意:一个长度为n的数组,用一个长度为k的滑动窗口扫描数组,在每次移动窗口时,求出窗口中出现的数的最大值和最小值;用单调队列优化,求最小值时维护一个单调增队列,使得队首为最小;求最大值时维护一个单调减队列,使得队尾为最大;可以数组模拟,也可以用STL的deque(因为队列的首尾都有操作);C++交AC,G++交TLE;#include...
2018-05-29 18:59:03 243
原创 A Map of the Cat CodeForces - 952B(交互式题目)
A Map of the Cat CodeForces - 952B题意:给出两张猫图,分别标有normal猫和grumpy猫对人抚摸身上某位置的对应反应;现在你输出0~9,然后后台系统对你的输出输入猫对数字对应位置的抚摸的感受,最后要求你输出这个猫是哪一类...
2018-05-24 19:12:09 416
原创 Nim or not Nim? HDU - 3032(尼姆博奕变形)
Nim or not Nim? HDU - 3032题意是这样的:尼姆博弈游戏在原有的游戏规则上附加一条——玩家除了取石子操作外,还可以将一堆石子分成两份,这也算一次操作;想一下,之前的...
2018-05-24 18:13:02 476
原创 邂逅明下 HDU - 2897(巴什博奕变形,打表找规律)
邂逅明下 HDU - 2897题意:一堆硬币,从中每次取p~q个硬币(若剩下的硬币小于p, 就全取完),取走最后硬币的玩家输;给出n个硬币,以及p,q,判断先手输赢;#include &...
2018-05-24 11:15:30 344
原创 954B - String Typing (认真读题!!!)
954B - String Typing 题意:给出一个目标字符串, 要求将一个空串转换为目标串,只能每次在后边加一个字符,或者将已得到的串copy然后粘贴到后边(注意!!!敲黑板了,这个操作只能用一次);就是吃了读题不严谨的亏,第二个操作只能使用一次,傻傻的我按多次算的,,,,无奈啊~~~既然操作二只有一次试用的机会,好到一定用在钢刃上,copy的越多越好;#include <iostre...
2018-05-23 16:58:53 286
原创 Max Sum of Max-K-sub-sequence HDU - 3415(最大连续k子段和,单调队列)
Max Sum of Max-K-sub-sequence HDU - 3415题意:找出循环数列中长度不超过k的最大的子段和;要找的子段的长度不超过k,普通思路就是由长度为1找到长度为k;O(nk)的复杂度,k小点还好说, 如果k很大就不可...
2018-05-22 20:47:51 536
原创 Matrix Swapping II HDU - 2830
Matrix Swapping II HDU - 2830 题意:一个由0,1组成的矩阵,求只由1组成的矩阵的最大的面积,矩阵的列与列是可以随意交换的;不看最后一个条件就和City Game HDU - 1505 一模一样了,但是这个题偏偏加上了最后一个条件, 怎么办呢???...
2018-05-22 19:26:27 216
原创 Euclid's Game HDU - 1525(博弈)
Euclid's Game HDU - 1525题意:两个数a,b; 每次用a,b中较大的数减去较小的数的倍数, 知道其中一个数减为0, 该回合操作人胜出;问给出两个数, 先手胜还是后手...
2018-05-22 19:00:28 225
原创 重温世界杯 HDU - 1422
重温世界杯 HDU - 1422题意:xxx去环游世界, 按给出顺序参观城市, 每到一所城市会得到生活费并花掉一些, 剩下的钱可以攒着,一旦没钱了就会被遣送回国;将生活费和花费合并(生活费-话费),不就成了求循环数组的最长的和>=0的子...
2018-05-21 16:04:26 336
原创 最大子矩阵和 51Nod - 1051
最大子矩阵和 题目链接:51Nod - 1051题意:给出一个矩阵, 每个单位矩阵有个数, 求数值和最大的矩阵;看起来似乎很棘手, 其实并不难, 思路开阔开阔;只要够成矩阵那么一定是单行...
2018-05-21 15:10:28 187
原创 循环数组最大子段和 51Nod - 1050
循环数组最大子段和 题目链接:51Nod - 1050题意:就是题目, 循环数组最大子段和;如果不加循环二字吗妥妥的DP做出来了, 异常的简单;加上循环二字就难办了;以每个数为起点跑一遍...
2018-05-21 14:34:47 123
原创 Pie HDU - 3392(滚动数组优化DP)
Pie HDU - 3392题意:n个男生, m个女生, 两两配对, 并且|n-m|<=100,要求配对之后,每对儿的身高差的绝对值之和最小;当n==m时, 一定是排序之后对应配对得到的身高差绝对值最小;但是现在n!=m;那么一定是那少...
2018-05-21 14:04:03 183
原创 Calendar Game HDU - 1079(博弈,打表)
Calendar Game HDU - 1079题意:在日历表上随机选一天, 然后开始游戏, 游戏规则如下:1.选择当前的下一天;如:2000/1/3可以转到2000/1/4;2.选择当...
2018-05-21 13:30:41 248
原创 Three-level Laser CodeForces - 956B
Three-level Laser 题目链接:CodeForces - 956B题意:由小到大排列的一个数列e[],找到(ek-ej)/(ek-ei)的最大值, 且i<j<k...
2018-05-21 12:32:20 223
原创 Pie Rules CodeForces - 859C(DP+思维)
Pie Rules 题目链接:CodeForces - 859C题意:n个pie, 按顺序给出大小, 两个人吃pie, 有一个令牌, 拿着令牌的人决定当前的pie分给谁, 然后没有分到p...
2018-05-20 20:56:35 350
原创 The Unique MST POJ - 1679
The Unique MST 题目链接:POJ - 1679题意:判断图的最小生成树是不是唯一的;先求出最小生成树, 然后枚举去掉最小生成树的一边, 再求一边最小生成树;#include <cstdio>#include <...
2018-05-20 18:42:35 171
原创 Drainage Ditches POJ - 1273(网络流最大流模板题)
Drainage Ditches 题目链接:POJ - 1273题意:给出有向图, 求由源点到汇点的最大流量;网络流最大流的模板题;#include <cstdio>#include <cstring>#inclu...
2018-05-20 16:42:40 168
原创 POJ 3013 Big Christmas Tree
Big Christmas Tree 题目链接:POJ - 3013题意:要求建一棵圣诞树, 1是根节点, 每条边的权重是这条边下的所有子节点权重之和*边的长度;要建树的代价最小;对于每个节点来说, 他提供的代价就是他到根节点的距离*自身权重...
2018-05-20 14:57:58 253
原创 Mystical Mosaic (状态压缩)
Mystical Mosaic 题意:n*m的棋盘, 每次选一个行集合R和一个列集合C, 将行与列的交点染成黑色, 每次操作不能选择已选过的行或列, 问能否将白色棋盘染成给出状态;记录每一行的状态(二进制表示),然后枚举状态;#include <cstdio>...
2018-05-20 11:28:25 207
原创 Matrix HDU - 2686(双线程DP)
Matrix HDU - 2686题意:在n*n的棋盘上每个格子中都有一个正整数, 由左上角走到右下角(只能向下, 向右走), 再由右下角走到左上角(只能向上,向左走),且不能重复(走过的格子不能走第二次), 每路过一个格子得到价值为格子中的...
2018-05-19 18:08:13 145
原创 Largest Submatrix HDU - 2870
Largest SubmatrixHDU - 2870题意:n*m的矩形中每个格子有一个小写字母, 只包含a,b,c,w,x,y,z;w可以转换成a,b;x可以转换成b,c;y可以转换成a,c;z可以转换成a,b,c;问转换后得到的只包含一种字母的最大的矩形的面积;做这道题前可以先做一下HDU - 1506和HDU - 150...
2018-05-19 15:26:05 121
原创 City Game HDU - 1505(单调栈)
City Game HDU - 1505题意:开发商在一块m*n的地皮上建楼房, 一直这块地有空地和已用地, 空地用F表示, 已用地用R表示, 每单位面积的地皮市值3$, 求出这整块地皮上价值最大的一块矩形地皮;HDU 1506 ...
2018-05-19 14:46:39 196
原创 Largest Rectangle in a Histogram HDU - 1506
Largest Rectangle in a Histogram HDU - 1506题意:n个宽为1, 高不定的矩形, 以宽为底, 按给出顺序排列, 找出其中所能构成的最大的矩形的面积;每个小矩形所在的最大矩阵是从他...
2018-05-19 11:24:19 224
原创 Treats for the Cows POJ - 3186
Treats for the Cows 题目链接:POJ - 3186题意:一列数, 每次只能从两边取走一个数, 每取一个数得到的价值是i*v(i是第i次取数, v是这个数的值);#in...
2018-05-19 10:17:49 108
原创 Help Jimmy POJ - 1661
Help Jimmy 题目链接:POJ - 1661题意:jimmy从高空下落, 他与地面之间youn个板子, 每次只能落到与他垂直距离<=maxn的板子上, 否则会摔死,然后跑到...
2018-05-19 09:46:59 212
原创 Common Subsequence HDU - 1159(LCS模板题)
Common Subsequence HDU - 1159题意:裸的LCS#include <cstdio>#include <cstring>#includ...
2018-05-17 21:08:31 166
原创 Advanced Fruits HDU - 1503(LCS 打印路径)
Advanced Fruits HDU - 1503题意:给出两个字符串, 要求将两个字符串合并 ,如果两个字符串有公共字符, 那么这个公共字符只输出一次, 使得合并后的字符串最短但又包...
2018-05-17 21:00:43 165
原创 字符串各类模板(持续更新)
KMPstring s;int nxt[100000];//计算nxt数组; //时间复杂度O(n)void cal_next(string s){ nxt[0]=-1; int k=-1, j=0, len=s.size(); while(j<len){ if(k==-1||s[k]==s[j]){ k++; ...
2018-05-17 20:07:34 907
原创 How many ways HDU - 1978(DP 或 记忆化搜索)
How many ways HDU - 1978题意:n*m的棋盘, 机器人由左上角走到右下角, 规则如下:1.机器人一开始在棋盘的起始点并有起始点所标有的能量。 2.机器人只能向右或者向下走,并且每走一步消耗一单位能量。 3.机器人不能...
2018-05-17 19:52:13 278
原创 Seinfeld HDU - 3351(栈 匹配括号)
Seinfeld HDU - 3351题意:只包含'{','}'的偶数长度的字符串, 每次只能改变一个括号:'{'->'}'或'}'->'{'; 求最少的操作次数, 使字符串是合法的;#include <cstdio>...
2018-05-17 17:06:41 339
原创 How to Type HDU - 2577
How to Type HDU - 2577题意:求敲出一串只包含大小写字母的字符串最少敲击键盘次数;caps lock键控制大小写, 灯亮是大写输入法, 反之是小写输入法;用二维数组dp[i][j],i取0, 1;0表示灯灭, 1表示灯亮,...
2018-05-17 16:34:19 135
原创 Prince and Princess UVA - 10635(LCS转换LIS)
Prince and Princess UVA - 10635题意:给出两个数串, 求出最长公共子序列(LCS);直接求LCS, O(n^2)的复杂度, 超时;题目说明, 数列中不会出现...
2018-05-17 15:38:55 181
原创 Phalanx HDU - 2859 (矩阵DP)
Phalanx HDU - 2859题意:找出矩阵中以副对角线(左斜)为轴的最大对称子矩阵;因为以副对角线为轴, 所以由右上角开始DP; #include <cstdio>#include <algorithm>#include ...
2018-05-17 09:14:26 206
原创 Super Jumping! Jumping! Jumping! HDU - 1087(LIS)
Super Jumping! Jumping! Jumping! HDU - 1087题意:一种跳棋游戏, 起点和终点之间是一排标有正整数的石头, 每次只能跳到标记数字比当前位置大的石头...
2018-05-16 21:20:36 180
原创 Palindrome HDU - 1513(LCS 滚动数组)
Palindrome HDU - 1513题意:给出一个字符串, 要求插入最少的字符使得该串成为回文串;对给出串和它的反转串求一遍LCS, 串的长度减去LCS就是答案;注意要用滚动数组, 否则会超内存;#include <cstdio&...
2018-05-16 20:51:49 152
原创 Students in Railway Carriage CodeForces - 962B
Students in Railway Carriage 题目链接:CodeForces - 962B题意:一排座位,'.'表示空位, '*'表示座位有人, 一共n个座位, 现在有a个A...
2018-05-16 19:04:16 258
原创 Tempter of the Bone II HDU - 2128
Tempter of the Bone II 题目链接:HDU - 2128题意:在迷宫中由起点走到终点, 可以用炸弹炸墙;结构体中多加一个mp存每个状态下的地图(原图不能改 );还有就...
2018-05-15 21:45:40 207
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人