自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 zoj 3812 背包

==好题,注意题目数据范围的特殊性#include<cstdio>#include<iostream>#include<cstring>#include<string>#include<cmath>#include<algorithm>#include<map>#define lson l,m,rt<<1#define rson m+1,r,rt<<1|1#define LL l

2016-05-29 19:40:18 213

转载 ZOJ 2532 最小割

【题目大意】 有 N 个城市,M 个中转站以及 L 条有向边(u, v, c),表示可以从 u 向 v 传送信息, 带宽为 c。每个城市都在向 CIA 总部发送无穷大的信息量,但是目前总部实际接 收带宽已经不能满足要求。CIA 决定要增大某条边的带宽以增大总部的接收带宽, 请找出哪些边带宽的增加能导致总部接收带宽的增加。(1 <= N+M <= 100, 1 <= L <= 1000) 【建模方法

2016-05-17 18:19:51 260

原创 SGU 326 网络流

题目大意:NBA 某小组内有 N 支球队,小组内以及小组间已经进行了若干场比赛。现在给 出这 N 支球队目前胜利的场数、还剩多少场没有比(包括小组内和小组间)以 及小组内任意两支球队之间还剩多少场没有比,问能否合理安排剩下的所有比赛, 使得球队 1 最后胜利的场数至少和小组内任何一支其他球队一样。 (2 <= N <= 20, 0 <= x <= 10000, x 表示其他任何输入)同样,

2016-05-07 15:49:50 325

原创 HDU 1068 最大独立集

题意是有n个学生,男女之间可能互相喜欢,让你找一个最大的学生集合,使得集合内的学生都不互相喜欢.思路:显然是找原图补图中最大的子完全图,最大子完全图即最大团,而这个图是二分图,因此即找最大独立集(二分图补图的最大团).二分图上的一些关系: |最大独立集| = |V|-|最大匹配数| |最小点覆盖|=|最大匹配| 有向无环图:|最小路径覆盖|=|V|-|M| 一个二分图不错的链接: http

2016-03-15 20:50:47 248

转载 网络流 ISAP 模板

poj 1087 题意 n个插座, m个硬件,k种转化器,每种转化器有无限个!!问最少有多少个插不上。单纯的网络流,处理字符串那一段有点烦,然后poj的数据好像有点大。要开大一点不然会坑,源点向每个插座连一个容量的边,每个硬件向汇点连一条容量为1的边,然后转换器之间连容量为无穷的边#include<iostream>#include<cstdio>#include<cstdlib>#incl

2016-03-14 21:56:45 194

原创 HDU 1151 最小路径覆盖

有向无环图的最小路径覆盖=图的点数-图的最大匹配数#include<cstdio>#include<cstring>#include<ctime>#include<iostream>#include<vector>#include<algorithm>using namespace std;const int N=2e2+5;int vis[N],match[N];int n;i

2016-03-14 20:54:06 171

原创 codeforces 632e fft

这题我之前用的是背包,现在补上fft的做法。题意是给你n种商品,每种商品数量无限,有各自的价格,现在需要买k个商品,设所得到的总花费为w,问你所有可能的w的值。思路:类似于母函数,共有k个多项式相乘,最后我们只需要观察x的幂次所对应的系数是否大于0.k比较大因此需要快速幂+fft.#include<cstdio>#include<cstring>#include<algorithm>#incl

2016-03-10 22:19:31 503 1

原创 codeforces 632f 最小瓶颈树

题意是给你一个n*n的矩阵,让你判断是否满足以下条件: 1.a[i][j]=a[j][i],a[i][i]=0 2.对于任意i,j,对于任意k,有a[i]][j]<=max(a[i][k],a[j][k]).思路:a[i][j]<=max(a[i][k],a[j][k])=max(a[i][k],a[k][j]),仔细观察发现它具有传递性,即a[i][l]<=max(a[i][j],a[j][k

2016-03-03 15:30:43 253

原创 codeforces 632e dp

题意是给你n种商品,每种商品数量无限,有各自的价格,现在需要买k个商品,设所得到的总花费为w,问你所有可能的w的值。这题不会,一直在纠结“刚好k个”怎么处理,看了别人代码懂的。 关键点在于去掉“刚好”,于是把所有价格减去最小的价格,即变为相对价格。那么一定存在某样商品价格为0,那么我们可以任意地在某个总价的基础上增加价格为0的商品数量而对总价不产生影响。 设dp[i]表示组成总价为i时需要的最少

2016-03-02 19:41:28 293

原创 codeforces 632D

题意是给你一个n的数组,要求一个子数组,使得子数组元素的lcm值不超过给定的m值,并且子数组的长度最大。n,m:10^6,数组元素:10^9似乎不止一次遇见这种类型的了,有必要做下笔记。就是说范围比较小可以直接用数组下标存储信息。开一个ct数组,ct[i]存储给定数组中可以整除i的元素的个数,所以只需要计算出ct数组就可以了。注意要逆序更新。#include<cstdio>#include<ios

2016-03-02 17:36:18 237

原创 codeforces 628D 数位dp

题意是给你两个长度相等的串,长度为n,求两串间满足条件的串的个数。一个串满足条件当且仅当奇数位不为d,偶数为为d,且串对应的数字可以被m整除。很典型的数位dp。手残调了一个小时…老是忘掉取模 思路:dp[i][j][1]表示前i位形成的数字,模m为j,且到达串前缀的上限的个数,dp[i][j][0]表示没有达到前缀的上限 然后按位数转移,讨论奇偶的情况。#include<cstdio>#inc

2016-02-27 18:13:28 327

原创 hdu 4417 线段树

题意是给你n个数,然后m组询问,每组为l,r,h,问你在区间[l,r]里有多少个比h小思路:将n个数从小到大排列,将询问按h从小到大排列,然后按顺序将n个数插入线段树中。具体来说是对于每一个h(从小到大),不停的插入新元素直到当前元素比h大为止,那么可以保证目前线段树上点的值都不大于h,然后就可以区间求和了,复杂度为(nlogn+mlogm)#include<cstdio>#include<cst

2016-02-26 15:35:48 645

原创 hdu 1540 线段树区间合并

题意是给你n个点,接下来有一些操作,包括删除某个点或者恢复某个删除的点,现在有一些询问,问包含某个点的连续区间的最大长度思路:用线段树维护区间[l,r],ls表示区间内以l为左端点的连续区间的最大长度,rs表示区间内以r为右端点的连续区间的最大长度,ms表示区间内最大连续区间长度。更新操作时需要维护这三个变量。然后查询[l,r]内包含点pos的连续最大长度时,利用分治的思想,将区间分为[l,mid]

2016-02-26 15:23:39 160

原创 uvalive 5873

0.0 渣渣的第一篇博客题目链接  http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=29402题意:平面内给定n个点,n则称这个点可以被勘测到,现在问有多少个点可以被勘测到orz比赛的时候都没时间看e题,其实是一个很裸的预处理问题。先对点按x排序,先顺序扫,在逆序扫,记录每个点可以被勘测到的左右直线的区间

2016-02-04 22:17:14 271

空空如也

空空如也

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

TA关注的人

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