不知道什么系列的题目
文章平均质量分 75
哼着小曲装13
这个作者很懒,什么都没留下…
展开
-
poj 1573 模拟
2015/1/25水题#include#include#include#include#include#include#include#include#include#includeusing namespace std;typedef long long ll; #define mod 10007#define lson pos<<1,l,原创 2015-01-25 10:48:07 · 439 阅读 · 0 评论 -
POJ1850 递推关系
2015/2/22还是先得打表,求出组合数比如一个字母的组合有几种,两个字母的组合有几种,,三个字母的组合有几种?(组合排列,不过杨辉三角形更方便,虽然我不知道为什么杨辉三角形这玩意可以来算通解组合数不过还是记下吧Orz)不太明白的可以自己百度 杨辉三角形然后再问你 abcd 十进制是多少?答: 一个字母的组合数 + 两个字母的...+三个的+ 1 = Num(abcd)原创 2015-02-22 21:04:35 · 462 阅读 · 0 评论 -
poj 2255 二叉树的后序遍历
2015/1/23根据 二叉树的先序和中序遍历建立二叉树后输出后序遍历。#include#include#include#include#include#include#include#include#include#includeusing namespace std;typedef long long ll; #define mod 100原创 2015-01-23 21:02:30 · 510 阅读 · 0 评论 -
POJ1019 递
2015/2/24让你找的是数字串中第 i 位的数字。输入2147483647输出2别慌,先打表,将 从头到第 X 个 数字的位数打出来(先得求出第X个数字的位数) 因为 i2147483647 所以打出来的数据不多,然后可以遍历去找到那一个满足条件数(比如 100 )最后再判断下是几位数上的数字,输出就好。原创 2015-02-24 19:25:30 · 450 阅读 · 0 评论 -
poj1942 递推
2015/2/25求组合数...注意点在于在for循环的过程中分母分子分开求的话会爆LL,所以只能求一组算一组(使用double)最后取整的时候+0.5,保证精度。#include#include#include#include#include#include#include#include#include#includeusing names原创 2015-02-25 21:57:50 · 730 阅读 · 0 评论 -
poj 1276 dp多重背包
2015/2/12简单的多重背包只不过数据不太水,不能用10背包来水过我用的是拆包。。就这样。。#include#include#include#include#include#include#include#include#include#includeusing namespace std;typedef long long ll;原创 2015-02-12 11:46:47 · 415 阅读 · 0 评论 -
poj 1837 dp
2015/2.12简单的背包dp....要注意的是挂砝码的过程中会出现平衡度为负数的情况,所以要用数组右移的方式防止数组越界。for ->放第 i 砝码for ->遍历平衡度(当前砝码放下后的平衡度是根据前一个平衡度状态来变化的 )for->第 i 个砝码 放在不同位子上的时候天平平衡度的变化。整个过程根据天平平衡度来变化,一开始天平平衡,所以初始状态就是 dp[ 0原创 2015-02-12 10:31:56 · 376 阅读 · 0 评论 -
poj3267 dp
2015/2/12Dp,字符串的匹配。for - > dp[ i ] 表示字符串前 i个 字母 的 不 匹配数量 for -> 遍历字典中的单词每个单词都去匹配一遍,如果字符串 的 前 i 个字符能完全匹配单词就记录,取匹配程度最大的(不匹配程度最小的)注意是 字符串和单词的下标从0 开始,所以初始化 dp[ 0 ] = 1;而之后 dp[ i ] = d原创 2015-02-12 12:53:50 · 489 阅读 · 0 评论 -
poj 1836 dp lis
2015/2/12最长上升子序列一开始没看明白就埋头乱搞。两次lis 取max 就提交(wa)了其实 71 2 3 4 3 2 1输出是7这样子,都明白了吧= = 做法:还是lis两遍 然后是 dp1[i ] + dp2[ j] i #include#include#include#include#includ原创 2015-02-12 13:48:02 · 489 阅读 · 0 评论 -
poj 1260 dp
2015/2/12简单的10背包变形状态方程dp[i] = dp[i-1]+(c[i]+10)*v[i];dp[i] = Min(dp[i],dp[j] + (s[i] - s[j] + 10)*v[i] );一开始用while(~scanf("%d",&tot)) wa了。。郁闷好久。#include#incl原创 2015-02-12 15:11:50 · 481 阅读 · 0 评论 -
poj 2533
2015/2/12最长上升子序列。水过。#include#include#include#include#include#include#include#include#include#includeusing namespace std;typedef long long ll; #define mod 10007#de原创 2015-02-12 15:19:03 · 476 阅读 · 0 评论 -
poj 1080
2015/2/13说不出来是什么dp。。问在给定矩阵条件的情况下两字符串的最优匹配程度。那就类似最长公共子序列了...(虽然这样说没有一点科学依据但是你砍我啊!)字符串s1 和字符串s2 for-> i s1for->j s2去遍历匹配,需要注意的是两者都可以匹配这个玩意 ‘ - ’ 所以在匹配的时候需要判断下 (s1[ i ] - ' - ' 和原创 2015-02-13 00:35:57 · 467 阅读 · 0 评论 -
poj 3176
2015/2/12数塔。#include#include#include#include#include#include#include#include#include#includeusing namespace std;typedef long long ll; #define mod 10007#define lson pos<<1,l原创 2015-02-12 15:31:15 · 469 阅读 · 0 评论 -
poj 1159 dp
2015/2/13问一个字符串最少添加几个字符能成为回文串(还有一个题目是问一个字符串最少删除多少字符能成为回文串我做过忘记了有空补上吧)做法就是,先假定最坏的情况::s1, s2 是s1翻转后的得到的,那么 s1+s2就是一个最坏情况的回文串然后做一个LCS,求s1,s2的最长公共子序列L。就是原串s1中能够得到回文匹配的字符的最大数量那么 len - L就原创 2015-02-13 14:09:35 · 432 阅读 · 0 评论 -
poj 2632 模拟
2015/1/25题目本身不难,坑在图的转换(给你的a,b和坐标不是拿来就能用的),图转换的同时别忘记坐标系ENWS的位置也会变化就行还有就是敲的时候情况都要考虑到,由于代码敲得有点多,debug的时候会很烦。= =像我就是debug后把各种测试输出数据语句没注释掉。。结果wa 7。#include#include#include#include#inc原创 2015-01-25 09:26:17 · 479 阅读 · 0 评论 -
POJ 3252 递推关系
2015/2/19递推。给定一个区间内有多少个数,数的二进制中0的数量不比1少。范围决定不能暴力(显而易见的)利用递推求区间和的方式 区间【L, R】 -> 最后的形式是 Sum(R) - Sum(L - 1)问题来了,如何求Sum(X)?我选择的方式是,输入N, M ,(以N为例) 把N转换成二进制 len为N 的二进制长度。原创 2015-02-19 21:46:28 · 453 阅读 · 0 评论 -
poj 2586
2014/12/10贪心很水,题目很难。英语二级。关键在于他的一年内每5个月报表, 5月份报:1-5月的,6月份:报2-6月的.......所以一共有八次。。。次次亏损,让你求总盈利最大。如果总盈利为负,则输出Def#include#includeint s[15];int main(){ int n, d; while(~scanf("%d%d",原创 2014-12-10 16:36:46 · 540 阅读 · 0 评论 -
poj 1068 模拟
2015/1/25水题#include#include#include#include#include#include#include#include#include#includeusing namespace std;typedef long long ll; #define mod 10007#define lson pos<<1,l,原创 2015-01-25 09:34:47 · 489 阅读 · 0 评论 -
poj 2253 最短路
2015/1/27最短路转下思路 或者 二分POJ去提交,别忘记浮点数G++用 %f..#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;typedef long long ll;原创 2015-01-27 22:35:49 · 468 阅读 · 0 评论 -
poj 1062 最短路
2015/1/26还是比较裸的最短路。这题需要注意的地方就是地位等级差距限制 k 去做最短路算法的时候限制应该是一个包含族长地位的变化的区间(而不是 [m-k,m+k])#include#include#include#include#include#include#include#include#include#includeusing原创 2015-01-26 23:15:41 · 443 阅读 · 0 评论 -
poj 1125 最短路
2015/1/28无脑的最短路,略烦。主要是题面有点醉(= =)。。。每个点到其他点的最短路的长度Lmax,然后再去Lmax中去最小值。。如果不存在,输出那个disjoint。#include#include#include#include#include#include#include#include#include#includ原创 2015-01-28 06:25:44 · 479 阅读 · 0 评论 -
poj 3259 最短路
2014/12/11吓我一跳,还以为连最短路都不会敲了。debug发现输入弄错了: for(int i =0 ;i < m; i++) { scanf("%d%d%d",&a,&b,&c); s[a][b] = Min(c,s[a][b]); s[b][a] = Min(c,原创 2014-12-11 03:00:35 · 557 阅读 · 0 评论 -
poj 2996 模拟
2015/1/26水题模拟。一道模拟五小时。大概短时间内都不会特地去做这个了。。= =模拟就这样吧。(其实这几题模拟不难,静下心来就行。难的模拟真的不想碰)#include#include#include#include#include#include#include#include#include#includeusing namespa原创 2015-01-26 05:01:08 · 513 阅读 · 0 评论 -
poj 2993 模拟
2015/1/26水题,模拟#include#include#include#include#include#include#include#include#include#includeusing namespace std;typedef long long ll; #define mod 10007#define lson pos<<1原创 2015-01-26 04:58:32 · 516 阅读 · 0 评论 -
poj 2240 最短路
2015/1/29无脑for for for.的最短路一开始用map把货币名hash下就好。(= =某沙比,输出了YES,NO,然后....“算法没错啊”....) #include#include#include#include#include#include#include#include#include#includeusing na原创 2015-01-29 08:41:58 · 614 阅读 · 0 评论 -
poj 1753
20174/12/8 太懒了,那几个比赛补完后就不知道刷什么题了。算法也不知道学什么。。就开个系列吧。-。-跟着前人的脚步走。PS:12点多开始撸这第一题。。第一眼看错题意 :Each round you flip 3 to 5 pieces 。。还以为只能翻转3-5个棋子。。。托托的写了发暴力。。神奇的是样例过了0 0(暴力代码已经出成题目,请党和人民放心)原创 2014-12-08 03:54:20 · 522 阅读 · 0 评论 -
poj 2965
2014/12/9卡了两天。。我一直很不解为什么别人dfs都能过,我bfs就tle。。。然后,然后。。。各种优化常数。。。最后,死在了用数组模拟就过了....Accepted468K32MS而且这个时间差的不是一星半点。。。Orz。这个游戏还能愉快的玩么。#include #include //#includeusi原创 2014-12-09 17:39:05 · 553 阅读 · 0 评论 -
poj 1328
2014/12/10太渣,错了很多次。。贪心贪吧,贪吧。一个个遍历算半径会有精度问题,要一开始就算出点的所在的左右半径中心。。#include#include#include#includeusing namespace std;double d;struct node{ double l,r;}s[1005];int cmp(node a,node原创 2014-12-10 03:50:48 · 588 阅读 · 0 评论 -
poj 2109
2014/12/10我又需要拯救了。。= =简直不能好好玩这个游戏。两份差不多的代码。第一份C++能过,G++WA。。#include #include #include using namespace std; int main() { double n,p; while(scanf("%lf%lf",&n,&p)!=EOF)原创 2014-12-10 04:09:19 · 586 阅读 · 0 评论 -
poj 3083 dfs
2015/2/4这道题目难在题意。。走迷宫的时候一般人选择的最优方法就是靠着墙壁走,总能走到出口。题目现在问的是选择的方向,你靠墙壁左边走需要的步数和靠墙壁右边走需要的步数(后面的bfs请无视吧。。)知道了题意 模拟一下,只要靠着墙壁走,然后两个方向都走一遍就好了。。#include#include#include#include#include#in原创 2015-02-04 14:54:20 · 477 阅读 · 0 评论 -
poj 2488 dfs
2015/2/4dfs,要按字典序输出。要用int tp[8][2]={{-2,-1},{-2,1},{-1,-2},{-1,2},{1,-2},{1,2},{2,-1},{2,1}}; 不然就要全部的路径比较了。。#include#include#include#include#include#include#include#include#inc原创 2015-02-04 12:42:28 · 448 阅读 · 0 评论 -
poj 1860 最短路
2015/1/26算法不难,主要别用矩阵去建边就好= =用矩阵很烦(没写出来)。#include#include#include#include#include#include#include#include#include#includeusing namespace std;typedef long long ll; #define mod原创 2015-01-26 07:46:43 · 466 阅读 · 0 评论