自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(48)
  • 收藏
  • 关注

原创 51nod 算法马拉松 天堂里的游戏

还算是比较著名的博弈问题天堂里的游戏李陶冶 (命题人)System Message (测试)基准时间限制:1 秒 空间限制:131072 KB 分值: 10多年后,每当Noder看到吉普赛人,就会想起那个遥远的下午。Noder躺在草地上漫无目的的张望,二楼的咖啡馆在日光下闪着

2015-06-06 14:51:33 700 1

原创 51nod 算法马拉松 集合计数

列出等式之后 发现是二元一次不定式 求正整数解 然而并不会求解 枚举肯定超时 经过一番搜索 发现是扩展欧几里德  然后现学现卖了一下  然而边界问题 涉及到四个实数化整 并求交集 需要考虑的太多 一时考虑不清楚 决定暴力枚举 然后只过了一半数据 只好又回头处理边界问题  静下心来 仔细一思考 边界问题也并不是那么难处理集合计数System Messa

2015-06-06 14:45:15 1036

原创 poj 3083

解决好方向问题就ok#include #include #include #include #include using namespace std;#define met(a, b) memset(a, b, sizeof(a))const int N = 45;bool flag;char g[N][N];int m, n, ans, vis[N][N];

2015-06-03 20:41:32 403

原创 poj 2531

暴力搜索 因为数据太弱 并不想去加什么剪枝#include #include #include #include using namespace std;#define met(a, b) memset(a, b, sizeof(a))const int N = 25;int g[N][N], vis[N], n, ans;void dfs (int k, in

2015-06-03 19:28:45 399

原创 hdu 5254

简单搜索 广搜 深搜 随便搜 开始想用vis  标记是否访问过  然后发现访问过的仍需访问 并不能用vis 标记 于是就想了另外一种方法 用三个方向        每次去访问四个对角  只有当 邻接对角 内元素为1  且   相邻两个方格内元素至少有一个为0  才去访问这个点 这样就保证了不会重复访问无用的点#include #include #incl

2015-06-01 15:23:22 404

原创 hdu 5256

卡到 1002 的 krushal  然后就一直没看这道题目#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;const int maxn=100010;const int INF=1000000

2015-05-31 20:49:31 769

原创 hdu 5253

没想到百度之星跪这么惨...本以为很简单的最小生成树 结果爆内存 超时 re 各种错 连一个wa都没有 归根究底 居然只是以为一个Find 函数写错了  因为抄的以前的代码 所以一直t到死 都不知道怎么回事#include #include #include #include #include #include #include #include #incl

2015-05-31 20:42:13 961

原创 poj 1014

拆分物品然后dfs 果断超时   加上各种剪枝 甚至剪树之后还是超时  无奈想用贪心 倒排序水过的 居然wa    从讨论终于发现了证明这种贪心方法错误的例子2 2 3 3 3 5  这样贪心是没法解决的  可是居然过了那么多能不能拆能两份的题目然后是另外一种dfs  不明白为什么 不超时#include #include #include #includ

2015-05-31 13:39:32 357

原创 poj 1564

写这个用了不少容器 记录一下#include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;typedef long long

2015-05-30 17:39:00 395

原创 hdu 5234 Happy birthday

#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;typedef long long ll;typedef long double ld;c

2015-05-27 18:32:59 357

原创 hdu 5228 ZCC loves straight flush

看英语看得困得慌 随便写了一道题 还是比较水的  直接暴力枚举所有同花顺的情况 看已经给出几张牌 去最小值即可#include #include #include #include #include #include #include #include #include #include #include #include #include usi

2015-05-19 15:50:03 510

原创 zzuoj 10409

此题是省赛 D题 点击打开链接 比赛时没有仔细看这道题 乍一看 什么流 什么最小费用 又因为比赛前正在写网络流 当下立即以为是最小费用最大流 想套模版 发现又不是费用流 一时有没有什么好想法 后来就一直卡c了 也没有时间去看这道题目 然后听人说这道题仍旧可以用最短路去做 又仔细老板探讨了一下 感觉他所说的dijkstra 完全就是prim  只不过要自己选定费用最小的源点罢

2015-05-19 10:35:22 363

原创 zzuoj 10408

此题是河南省第八届acm C题  点击打开链接比赛时写这道题由于学长给了一种奇葩的建图方式 导致浪费了两个小时去写搜索 当然最终也没有过这道题 后来和老板他们讨论 说起配合的问题 说不应该先听队友的思路 否则容易被先入为主 没有别的想法 在轻院已经吃亏 由于长期缺乏组队经验 我并没有意识到改正 正确的应该自己也看下题 想想自己的思路 然后和队友去讨论当时的建图方法是 是 a b c

2015-05-19 10:22:47 520

原创 poj 1191

#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;typedef long long ll;typedef long double ld;c

2015-05-07 13:26:05 385

原创 Twenty-fourpoint

#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;typedef long long ll;typedef long double ld;c

2015-05-06 19:59:11 455

原创 poj 1088

记忆化搜索因为写错边界 错了n次不知道怎么回事#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;typedef long long ll;

2015-05-04 20:58:11 299

原创 poj 1050

省赛前练习点动态规划#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;typedef long long ll;typedef long d

2015-05-04 19:39:06 336

原创 poj 3281

终于在有模版 有算法书的情况下 倒腾了半天 a了人生中第一道最大流题意:有n头牛,f种食物, d种饮料,每头牛都有自己喜欢的饮料和食物,问最多能让几头牛同时得到喜欢的食物和饮料.关键是建图 增加一个超级汇源 s  一个超级汇点t然后 s 与食物连边 饮料与t 连边  为了防止一头牛不会被多组食物分配 所以将牛拆开然后就是  s  -  食物 - 牛 -

2015-04-30 20:45:33 370

原创 网络流模版

终于找到了心仪的网络流模版首先是Dinic/*Dinic 模版 (刘汝佳) 支持重边 加入当前弧优化递归写法 如果递归爆栈 改用ISAP*/#include #include #include #include #include using namespace std;typedef long long ll;typedef long double

2015-04-30 14:37:18 444

原创 hdu 4734

#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;typedef long long ll;typedef long double ld;c

2015-04-29 13:19:56 367

原创 poj 1850

排列组合...长度为n的总方案共有 c (26, n)对于 vwxyz 来说  是从 a ->  ab -> abc -> abcd ->abcde ->vwxyz所以先加上之前的总组合数 c (26, 1) + c (26, 2) + c(26, 3) + c(26, 4) 再来看 abcde ->vwxyza_ _ _ _ ->  需要  a -> b -> c ...

2015-04-28 20:54:40 418

原创 hdu 3652

总算自己套模版套出来一道 虽然是思维 不过代码比三维的精简#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;typedef long

2015-04-28 18:53:03 455

原创 hdu 3555

坚持写数位dp 套模板 好像有了一些更深的理解#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;typedef long long ll;t

2015-04-28 16:27:31 267

原创 codeforces 55D Beautiful numbers

写了两道数位dp了 还是比较朦胧#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;typedef long long ll;type

2015-04-28 15:26:14 346

原创 hdu 2089

开始学一下数位dp 有一个地方不理解 先标记一下#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;typedef long long ll;

2015-04-27 20:48:49 332

原创 位运算总结

常用的有 判断奇偶   &if(a & 1)== 1    则a是奇数     if (a&1) == 0  则 a是偶数>>     a >> = n  相当于 a /  2^ na ^= b ^= a ^= b    交换两个变量的值  如果有0则不能交换与(&)0 & 0 = 01 & 0 = 0

2015-04-22 21:13:06 268

原创 hdu 3756

三分首先三维变二维L这条线必定和某一个给定的点擦边,也就是经过那个点,我们假设它经过P(a, b), 并且L的斜率为K(K 可以利用这个方程表示出来:H = -a * K + b;R = -b / K + a;那么所求的圆锥的体积就是:V = pi*H*R^2 = pi * (-a * K + b) * (-b / K + a) ^

2015-04-22 15:24:09 471

原创 hdu 2438

在网上看到两种方法 始终不能理解另一种方法 还好另外一种方法正确性显而易见车转弯的时候车有段与地面的夹角角度是从0度变化到90度的。也就是转弯的时候需要一个最大的宽度才能过去。 否则就卡在 那里了。这个宽度PH是先增加后减少的。是个凸型函数,因此是三分求的极值。直线y的斜率为tan(θ),还经过点(0, Lsin(θ)+D/cos(θ))因此得到y的直线

2015-04-21 16:49:38 368

原创 zzuli 1731

比赛时写这道题 跟着学长的思路走      咬定就是二维树状数组 结果后来时间从1s加到3s 还是一直超时     想在区域赛的时候夜市死在超时上    到最后也是没能写对这道题     后来听了学弟的思路才恍然大悟    数据这么有规律    完全可以用等差公式求出和    复杂度是O(1 ) 完全没有超时的可能    并且m n 也完全没有发挥作用 1s的时间 用cin读入也能轻轻松松过

2015-04-20 17:57:23 487

原创 hdu 2289

简单二分 主要是圆台体积公式水平面的半径u可以根据直角梯形的面积求出:(r+u)*h + (u+R)*(H-h) = (r+R)*H得出(R-r)*h = (u-r)*H得 u = r + (R-r)*h/H圆台体积计算公式:V= π*h*( R^2 + R*u + u^2 ) / 3#include #include #include #include #in

2015-04-14 16:56:11 495

原创 hdu 2899

很简单的三分  也可以求导 二分#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;typedef long long ll;type

2015-04-14 16:21:13 309

原创 hdu 1712

ACboy needs your helpTime Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 4684    Accepted Submission(s): 2514Problem DescriptionACbo

2015-04-11 18:16:51 292

原创 hdu 3732

Ahui Writes WordTime Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 2245    Accepted Submission(s): 824Problem DescriptionWe all kno

2015-04-11 17:26:18 287

原创 hdu 1063

#include #include #include #include #include #include #include #include #include #include using namespace std;const int N = 200;const int INF = 0xfffffff;//typedef long long ll;typedef

2015-03-23 21:32:34 379

转载 关于STL中vector使用unique()去重的问题

STL中Unique函数的作用是去除相邻重复元素#include#include#includeusing namespace stdint main(){int a[10] = {7,4,1,7,4,1,7,4,1,0};sort(a,a+10);//小到大vectorver(a,a+10);vector::iterator iter = un

2015-01-23 16:21:46 1517

原创 hdu 1556 Color the ball

1 标记起点   -1 标记终点#include #include #include using namespace std;const int N = 100000 + 10;int x[N];int main (){ int n, i, a, b; while (cin >> n, n) { memset (x, 0, sizeo

2015-01-21 18:09:48 452

原创 hdu 1754 I Hate It

#include #include #include #include #include #include using namespace std;const int MAXN = 200000 + 10;int a[MAXN], c[MAXN], n, m;int lowbit (int x);int getmax (int l, int r);void add (int

2015-01-21 17:46:26 317

原创 hdu 1286 找新朋友

欧拉函数#include using namespace std;int ef(int n);int main(){ int m, n; cin >> n; while (n--) { cin >> m; cout << ef (m) << endl; } return 0;}int ef

2015-01-20 17:15:57 373

原创 hdu 1203 I NEED A OFFER!

#include #include #include #include using namespace std;#define N 11000struct node{ int a; double b; bool operator < (const node &x) const { return a * x.b < b * x.a;

2015-01-17 15:17:50 361

原创 hdu 1160 FatMouse's Speed

#include #include #include using namespace std;#define N 1100struct node{ int w, s, num;};bool cmp (node a, node b){ if (a.w != b.w) return a.w < b.w; else retu

2015-01-17 11:34:40 410

空空如也

空空如也

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

TA关注的人

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