- 博客(184)
- 收藏
- 关注
原创 macro definition for cfs 、tc.
边集和树状数组#include #include #include #include #include #include #include #include #include #include #include const double pi=cos(-1.);const double eps=1e-6;const double eps1=1e-9;const
2012-08-16 22:19:17 753
原创 树状数组
http://community.topcoder.com/tc?module=Static&d1=tutorials&d2=binaryIndexedTrees 超级讲解,hdu1166 敌兵布阵单点修改, 区间查询, (区间和)const int maxn=50000+123;int a[maxn], c[maxn];int n;int sum(int
2012-08-16 20:09:58 574
原创 一些偏的数据结构整理【整理+复习】
BKTree:matrix67's bloghttp://baike.baidu.com/view/2020247.htm 划分树: http://blog.csdn.net/jxy859/article/details/7755201可持久化线段树:kd-tree:树状数组:1166 敌兵布阵http://bl
2012-08-01 11:10:03 678
原创 网络流【复习+总结】
把自己以前写的网络流解题报告和网络流算法再看下,在这里总结下,当复习了。sap算法, 目前我最常用的, 第一次学的时候代码就不太理解,只会贴模板,于是重新敲了下,当时第一题的链接:sap一些优化的思想http://blog.csdn.net/jxy859/article/details/6630182对于有些特殊的题目, 反而用sap会很慢, 比如一些n和m比较大,而U是一个较小的数,
2012-07-23 10:38:02 703
原创 暑假+小学期计划
要写的东西, 图论的模板(该扔的扔了,简单算法估计都用不到模板了), 基于状态压缩的容斥原理, 常系数线性递推式的矩阵乘(总结), 线性素数筛的2种常系数优化。先这些吧, 还有数据结构 , 各种树 划分树、左偏树、伸展树。。。还有2个大课题, 搜索 a* 字符串, kmp 后缀数组, ac自动机 额额。。
2012-07-17 09:54:46 718
原创 POJ 图论分类 + DP(较全 自己又加了点)
DP-----------动态规划状态压缩DP2411 (棋盘规模较大)状态压缩DP+DFS+滚动数组2664 (棋盘规模较小)直接递推即可(DP)2506 (棋盘规模较小)直接递推即可(DP+高精度)1185 经典状态压缩,炮兵阵地背包相关问题3
2011-07-20 11:14:20 1735
转载 转个poj分类——方便自己
<br />多版本pku题目分类及算法分类 <br />按照ac的代码长度分类(主要参考最短代码和自己写的代码)<br />短代码:0.01K--0.50K;中短代码:0.51K--1.00K;中等代码量:1.01K--2.00K;长代码:2.01K以上。<br />短:1147、1163、1922、2211、2215、2229、2232、2234、2242、2245、2262、2301、2309、2313、2334、2346、2348、2350、2352、2381、2405、2406;<br />中短:1
2011-04-23 20:01:00 789
转载 joj (神一般的循序渐进200题 扩充版 11.08.20)
在宋师兄(非10级的宋大神牛)的基础上,又加了一些算法的典型题。(有一些可能只有题号没有贴链接)Level 0 (试试吧,电脑判题很神奇的):AC掉 1000(The A+B Problem) 吧!(一二阶段,共49题,每天至少三题,由简到难)Level 1(格式入门,熟悉OJ):2484(格式控制) 2357(排序)
2011-04-14 20:46:00 1445
原创 【整理】堆栈空间, 进程内存布局
程序代码区:存放函数体的二进制代码。文字常量区:常量字符串就是放在这里,程序结束后由系统释放。全局区(static):也叫静态数据内存空间,存储全局变量和静态变量,全局变量和静态变量的存储是放一块的,初始化的全局变量和静态变量放一块区域,没有初始化的在相邻的另一块区域,程序结束后由系统释放。堆区(heap):一般是由程序员分配释放,若程序员不释放的话
2016-07-25 19:42:54 908
原创 leetcode 刷刷刷
https://leetcode.com/problems/binary-tree-level-order-traversal-ii/class Solution { public: vector> levelOrderBottom(TreeNode* root) { vector >ret; queue Q1;
2015-09-29 22:33:44 609
原创 2013南京 Onsite 代码(未提交)
4题第一名, 比赛的时候看的C,E,K, 都敲出来, 有机会交下, 我真是个逗逼, #include #include #include using namespace std;const int maxr = 103;const int maxc = 12;int dp[103][12][2048+123][22];char mp[maxr][maxc];const in
2013-11-06 19:56:01 977
原创 2013长春网络赛K题sword (hdu 4769)
本来只想出个中等难度题, 在题意上绕一下, 没想到到了网络赛的时候竟然没有队伍ac, 而且全场也只有2个队伍北大,华南师范尝试过提交,就连4小时就已经10题的清华都没在最后1小时有提交(估计他们10题之后就出去玩耍了吧),---------------------------------------------------------------------------------
2013-10-02 23:12:51 1623
转载 string & timestamp
package com.apple.sqm.common;import java.sql.Timestamp;import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;import java.util.TimeZone;/** * @author Junbos * */p
2012-12-30 19:49:22 978
原创 虽有遗憾,并无后悔——长春天津两站捞票失败小记。
接触icpc已经1年半多, 今年的比赛的成绩无论好坏都算是给自己的付出一个交代,毕竟这可能是最后一次参加竞赛了(即便明年再参加,也不可能这么用心了),本以为已经做了充分的准备,付出就会得到,但是当真正坐在赛场上时,发现自己还是像当初一样,依然的无能为力,长春天津,2站落败。 长春:长春是和2个11级的学弟组队, 一个大coder,一个数学输出。热身赛到是没什么,一道人品题,一道yy
2012-10-27 21:38:06 2149 7
原创 dlx 精确覆盖
dlx的合集比赛点击这里 hustpoj 3074 标准数独模版#include #include /**在计算科学理论中,这一类问题的解答被称之为NPC问题中的Hitting Set Problem,中文名应该叫做碰集问题。该类问题可以通过转换成为精确覆盖问题,其中以行表示概然,以列表示常规约束。在数独问题中,行所表示的概然状态很明显为(r,c,k)即行,列,放置的数
2012-10-11 21:43:04 678
原创 dancing links X算法
hust 1017Exact cover就是knuth论文里拿来举例子的题, 算是精确覆盖的裸题了。#include #include /** 在01矩阵找一个行集合,使其精确覆盖所有的列所谓精确覆盖就是所有行中含1的列有且仅有一个,而重复覆盖允许有多个。**/const int maxn=100000+123;const int maxc=1000+5;int
2012-10-09 19:13:35 1466
原创 2008年成都赛区(中山)
2474 Process scheduling a题 multiset multimap用法#include #include #include #include using namespace std;const int maxn=50000+123;struct Proc{ int a[10], r[10]; bool rls;}p[maxn];//in
2012-10-05 12:45:15 2105
原创 2012网赛杭州赛区
1002 arrest有k个警察在0点按顺序遍历1到n去抓小偷, 这样构图时就要对编号小的连向编号大的, 之前要floyd处理。我赛后的构图:对每个点的遍历有个限制是必须是1次, 由于是费用流, 可以用将该流置为-inf的方法,强制改变访问一次。当时比赛时zzc的构图:跑k次网络流, 分别枚举1~k个警察情况下的最小费用, 也同样用了一个-inf的方法, 不过是加到了城市之间的连通
2012-09-25 20:21:09 1352
原创 2012网赛金华赛区
hdu 4405 Aeroplane chess期望dp..倒着推方便一些。 dp[i]记录从i到终点用的次数的期望, dp[0]为答案。#include #include #include #include #include using namespace std;const int maxn=100000+123;double dp[maxn];int fly
2012-09-22 20:51:57 1643
原创 2sat[专题]
http://hi.baidu.com/joy32812/item/8d2c066065a2e92c68105b12http://www.cnblogs.com/ambition/archive/2011/07/30/2-sat.html 这个比较推荐照这个刷,这个2-sat就基本差不多了HDU 3062 Party 【裸题】 模版题#include #includ
2012-09-20 20:38:12 1746
原创 2012网赛成都赛区
a题是cf 85d原题, 纯数组模拟o(n^2)就过了, zzc的o(n*sqrt(n))的分块都tle了,无力吐槽int a[100005];char ss[55];int main(void) { int n; while (~scanf("%d", &n)){ int l = 0; for (int i=0; i<n; i++) { scanf("%
2012-09-15 21:59:55 1983
原创 2011多校 dijkstra最短路变形
hdu Problem 3873 Invade the Mars对算法的理解还是不到位, 导致卡了一天!而且有个小地方, 就是dist是inf时, des有值的时候,时间不能取成des, 这个错误找了好久。。优先队列入队的时候并不是最优的解, 出队时满足dist【cur.u】>=cur.w才是最优解, 因此更新被限制节点时是要在出队时更新。#include #incl
2012-09-13 14:54:34 569
原创 2012网赛天津赛区 2012tianjin regional online contest
b题 平衡树 或multiset.hdu Problem 4279#include #include #include using namespace std;const int maxn=100000+123;///int ax[maxn], ay[maxn], bx[maxn], by[maxn];multiset > card;struct Node{ i
2012-09-11 20:58:13 639
原创 2012网赛长春赛区
a题 4267 A Simple Problem with Integers一直纠结在如何缩减区间, 后来发现直接更新就好了, 比如更新模10余1的在1到20区间上, 我们需要更新的是1和11, 在新区间上应该是【1, 2】 但是其实直接去更新模10余1那颗树上的【1,20】其实就可以, 因为查询除模10余1之外的数,是不会访问到这颗树的更新, 自然也不会影响其他位置的值int
2012-09-10 15:59:40 1760
原创 斯坦纳树[全都floyd+状态dp]
http://endlesscount.blog.163.com/blog/static/821197872012525113427573/poj3123 这个只有30个节点, 直接floyd即可, 后面找最优解还是比较恶心的, 不过一共就2^4个状态,再 循环4次搞定, 老外还有一种神代码, 看了好久才懂不过最后看了别人的代码, 还有一种合并的方法http://blog.
2012-09-02 16:21:22 1553
原创 动态规划 斜率优化
hdu4258/** * Covered Walkway * @author vanb * * This problem would be pretty easy, if it weren't for the size of the data sets. * If the data sets were small, a simple DP solution would
2012-08-30 16:00:25 889
原创 zju monthly contest 2012 aug.
#include #include #include #include using namespace std;#pragma comment(linker, "/STACK:1024000000,1024000000")const int maxn=40000;const int inf=0x7fffffff;const int s=0;struct edge{
2012-08-28 18:25:27 579
原创 斜率优化
/** * Covered Walkway * @author vanb * * This problem would be pretty easy, if it weren't for the size of the data sets. * If the data sets were small, a simple DP solution would suffice: * *
2012-08-26 21:13:59 505
原创 树链剖分
http://blog.sina.com.cn/s/blog_7a1746820100wp67.html 别人转的讲解, 看的这个学的。感觉不是必要的方法, 其他方法也能做的, 一般要维护树种路径的最值时才需要这个算法spoj375对边权的路径剖分#include #include #include #include #include using names
2012-08-25 10:47:40 909
原创 2012 Multi-University Training Contest 10[hdu4390~4399]
多校终于结束了, 开始从后往前整理4390 Number Sequence容斥原理, 比赛的时候把10^25理解成2^25以为不会超long long, wa了好几次,最后队友提醒才看到#include #include #include #include #include #include #include #include #include #
2012-08-24 20:49:42 1387
原创 2012 Multi-University Training Contest 9[hdu4380~4389]
hdu 4386 Quadrilateral公式 或三分法枚举任意2边为临边的对角线。 hdu 4388 Stone Game II 博弈 , 很好的题比赛的时候由于4387卡住了, 而且4388的操作又太复杂, 所以没太仔细去分析题目的本质, 题目大致的意思是初始n堆石子 没人轮流选一堆石子进行操作, 该堆石子的总数设为a, 要求拿走一定数量的石子, 使其剩余k个
2012-08-22 23:02:20 836
原创 树形结构转换线性结构的方法(lca倍增)
这个讲的还不错的, 整理的很全 http://blog.csdn.net/lyhypacm/article/details/6734748hdu 3966dfs序是针对某条路径, 利用根到路径#include #include #include #include #include #include #include #include #includ
2012-08-18 20:05:11 1414
原创 2012 Multi-University Training Contest 8[hdu4370~4379]
4370 0 or 1就2种情况, 一种是1到n的最短路, 一种是包含1的环和包含n的环, 第一种情况直接sssp就好, 第二种比较好的处理方法就是枚举环的一个点, 然后用sssp得到的dist数组去求2个最小环, 相加即可,我的方法是再跑遍floyd, 不过要用dist优化一下, 提前排除不是最优解的情况, 1600ms水过#include #include #include
2012-08-16 18:24:26 751
原创 2012 Multi-University Training Contest 6[hdu4350~4359]
4351 Digital root4355 Party All the Time 两种解法, 一种三分,一种dp三分是要满足凹凸性的, 既二阶导数不变号, 这个很好证明的, 题目要求的是sigma|p-xi|^3*wi, 不妨对每项拆开讨论 :|p-xi|^3*wi ,当p>=xi时 原式为(p-xi)^3*wi 二阶导为(6p-6xi)*w
2012-08-09 18:29:38 800 2
原创 hdu2586[lca离线tarjon算法][递归与非递归]
hdu2586[lca]tarjon 是离线的算法, 在线的话会有倍增法和rmq,其实这2个方法有一曲同工之妙#include #include #include #include using namespace std;const int maxn=100000+123;#define forg(p,x) for(p=x; ~p; p=edge[p].nex
2012-08-09 11:46:45 977
原创 2012 Multi-University Training Contest 5[hdu4340~4349]
hdu4340#include #include #include #include #include #include #include #include #include #include #include const double pi=cos(-1.);const double eps=10e-6;const double eps1=10e-9;const
2012-08-08 13:30:44 719 1
原创 2012 Multi-University Training Contest 4[hdu4331~4339]
hdu 4332 Constructing Chimney 状态压缩dp+矩阵优化, 256×256的暴力方法,幂矩阵的预处理和某项为0时的跳出优化,时间1s多, 还要消化下那个循环移位取最小的神优化能化到35×35typedef long long ll;typedef unsigned int UI;using namespace std;const int SZ=256;c
2012-08-06 13:22:09 559
原创 2012 Multi-University Training Contest 3[hdu4320~4330]
hdu4222 candy http://acm.hdu.edu.cn/showproblem.php?pid=4322费用流 看题解构图过的, 同时利用了边的费用和流量 题解这里, 【题目大意】有N颗糖果和M个小孩,老师现在要把这N颗糖分给这M个小孩。每个小孩i对每颗糖j都有一个偏爱度Aij,如果他喜欢这颗糖,Aij = k,否则Aij = 1。小孩i觉得高兴当且仅当ΣCij×A
2012-08-01 11:12:12 621
原创 2012 Multi-University Training Contest 2 [hdu4310~4319]
hdu4317 nim+状压dp, Unfair Nim 状态很容易想到,转移就恶心了。。。 不过屡清思路就好了#include #include #include #include #include #include #include #include #include #include #include const double pi=cos(-1.);const
2012-07-27 17:39:11 649
原创 hdu 4253
陈题, 有篇论文, 利用了N多生成树的性质,大体思想就是通过调整某种边的权值后生成一个最小生成树, 这个新树所分的结构是与原树2种边按此分法生成的最小生成树是最优的, 这样就转换成了一种枚举一种边增加的权值后的生成树的算法, 而且我们要找的是一个区间 http://oj.tsinsen.com/resources/Train2012-test-clj-tree.pdf #in
2012-07-24 17:07:56 1259
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人