自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(12)
  • 收藏
  • 关注

原创 poj2528 线段树+离散化

题意:n(n      求出最后还能看见多少张海报。输入:151 42 68 103 47 10解法:离散化,如下面的例子(题目的样例),因为单位1是一个单位长度,将下面的      1   2   3   4  6   7   8   10     —  —  —  —  —  —  —  —      1   2   3   4  5   6

2012-03-22 22:32:10 11126 13

原创 poj3258 二分及一些思考

题意:牛要到河对岸,在与河岸垂直的一条线上,河中有N块石头,给定河岸宽度L,以及每一块石头离牛所在河岸的距离,          现在去掉M块石头,要求去掉M块石头后,剩下的石头之间以及石头与河岸的最小距离的最大值。用二分做,但是开始写了三个版本的二分,全都wa。无赖看了别人的二分,还是不理解,为什么他们写的就能过。反复思索后,终于明白了:关键在于题目求的是什么。做题思想:二分

2012-03-18 14:50:12 5186 1

原创 poj3273 二分,以及关于二分的一些思考

题意:给定n个元素的一个序列,要求用隔板法将其分为m段,编程求出分成m段后,将每一段的数相加所得的最大值最小为多少做法,枚举可能的数值,然后判断分段的段数,跟给定段数m进行比较,接着不断逼近即可。#include #include using namespace std;int money[100005], n, k;int BSearch(int l, int h, in

2012-03-17 19:58:38 639

转载 各类背包问题

今天刷了男人八题中的1742,是一道多重背包,一开始把1276代码改了之后交上来,发现TLE了,于是去disscuss区看了说,说用二进制优化的多重背包也是过不了的,要用更加优化的多重背包,于是上网搜了下,根据别人代码修改了自己的代码,于是AC了,不过实在看不出别人代码为什么会比自己那个优化那么多。写完后就搜了下背包问题,找到一篇介绍各类背包以及优化方法,觉得不错就贴上来了它是在1978年由M

2012-03-17 16:42:04 999

原创 poj2115 扩展欧几里德算法小结

以下是学习扩展欧几里德算法的资料的整合,有的转自别处,如百度百科。扩展欧几里德算法源于欧几里德算法。欧几里德算法:gcd(a,b)= gcd(b,a%b)。证明:a可以表示成a = kb + r,则r = a mod b            假设d是a,b的一个公约数,则有d|a, d|b,          而r = a - kb,因此d|r  因此d是(b,a mod

2012-03-17 15:43:18 2449 1

原创 poj3292

http://poj.org/problem?id=3292筛选法:p【i】 == 0表明4i+1为h-prime, p【i】 == 1表明4i+1为非h-semi-prime的h-composites,               p【i】 == 2表明4i+1为h-semi-prime如何筛选看代码#include #include using namespace st

2012-03-08 12:44:54 672

原创 poj1019 递推 number sequence

按这样的方式将字符串分组:1,12,123,...,123...n,...  用 f【】表示每一组的长度(数字的个数),所以:   1          ~         9   :   f【i】= f 【i - 1】+ 1;   10        ~       99     :     f【i】= f 【i - 1】+ 2;   100       ~

2012-03-07 18:51:31 669

原创 poj1416 dfs 碎纸机

题意:将一个数字m(不超过六位)剪成几段,要求得到的新的几个数之和不超过另外一个给定的数n,求可以得到的最接近n的数,具体输出看题。记录路径输出。#include #include #include #include using namespace std;#define M 6int d[M], tar, val, len, num[M][M];bool flag;

2012-03-06 22:26:10 2127

原创 poj3414 Pots

倒水游戏,两个水壶互相倒水,直到某个水壶中的水量到达目标值,若不能到达,输出impossible这个题完全自己做出来还是感觉很开心的,因为以前在一次比赛上做过,但是没做出来,现在做出来说明还是成长了广搜,以及路径记录,最后递归输出路径。#include #include #include #include using namespace std;#define M 105

2012-03-02 21:10:17 977

原创 poj2531 暴搜

给定无向图,将顶点分成两个集合,使得两个集合间的所有边权最大。#include #include #include using namespace std;int c[22][22], n, ans, set[22]; //最初所有节点都默认在集合0void DFS(int id, int sum){ int i, t; set[id] = 1;

2012-03-02 21:04:16 1208

原创 poj2676 Sudoku 数独

记录所有空位置,三个数组(row[M][M], col[M][M], mat[3][3][M])hash判断当前空位置是否可以填某个数,然后直接DFS,注意从后往前搜索,时间比正向搜快很多。#include #include #include using namespace std;#define M 11struct point { int x, y; } p[100];

2012-03-02 20:52:18 1549

原创 poj1129 dfs

题意:给定无向图,对点着色,使得相邻的结点颜色不同。直接搜索,没有用四色原理,用四色原理也是暴力,没有什么影响。#include #include #include using namespace std;#define M 26int n, ans, color[M]; bool map[M][M], isFind;bool ok(int x, int c) {

2012-03-02 20:43:07 3255 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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