自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Longest k-Good Segment

The array a with n integers is given. Let's call the sequence of one or more consecutive elements in a segment. Also let's call the segment k-good if it contains no more than k different values.Find a

2016-01-27 00:59:19 359

原创 UVA 11488 Hyper Prefix Sets

就是求前缀长度*有当前长度前缀的串的数量 的最大值#include#include#include#include#include#include#include#includeusing namespace std;typedef long long LL;#define N 25#define inf 1999999999struct node{ int

2015-12-15 17:16:57 327

原创 hihocoder #1141 : 二分·归并排序之逆序对

#include#include#include#include#include#include#include#include#includeusing namespace std;typedef long long LL;#define N 100005#define inf 1999999999#define mod 1000000007int a[N],b[N]

2015-12-14 17:04:01 338

原创 UVA 11235 Frequent values

求区间最多相同数的数量是多少,因为数列是排序好的,所以直接离散了用线段树求比如样例-1 -1 1 1 1 1 3 10 10 10 离散后就是(1,2)(2,4)(3,1)(4,3)标号为1的数有2个,标号为2的数有4个.....再用Left[i]Right[i]数组记录标号为i的左边界和右边界,方便查询。查询时就是线段树求最大值了#include#include#include

2015-12-13 17:15:28 273

原创 hdu 5529 ZYB's Premutation

当时想到是nlog(n)的方法,也想到用线段树,可是就是写不出来,只知道a[i]-=a[i-1]就是前面有多少个数比当前这个数大,却没想到如果这时a[i]+1就是当前数组中第几大的数了,当然要倒着求,然后就是用线段树维护一个数组了。没想到写出来这么简单。#include#include#include#include#include#include#includeusing na

2015-12-06 17:11:51 662

原创 LightOJ 1140 How Many Zeroes?

题意就是问从n到m之间有多少个0。数位dp枚举每一位dp[i][j]表示到i为有j个0的有多少#include#include#include#include#include#include#includeusing namespace std;typedef long long LL;LL dp[22][22];int dig[20];LL F(int pos,int

2015-12-04 21:12:16 256

原创 poj 1679 The Unique MST

判断最小生成树是否唯一,只需要判断是否存在至少有两条到达某个点相同权值的路径#include#include#include#include#include#includeusing namespace std;#define N 110#define LL __int64#define inf 1999999999int dis[N],Map[N][N];bool vi

2015-12-04 14:31:12 214

原创 hdu 3018 Ant Trip

问至少从几个点出发可以遍历所有的边且每条边仅访问一次。先看看给定的图是几个联通块组成的,遍历的起点和终点肯定是度为奇数的点(除非这联通块是环)也就是遍历只能是u->v1->v2->v3->。。。。->vn(或者u->v1->v2->v3->。。。。->u),所以要统计每个联通块的度为奇数 的点的个数和度为偶数的点的个数,则ans=奇数 的点的个数/2+都是偶数的联通块的个数。#includ

2015-11-24 18:04:30 265

原创 POJ 2392 Space Elevator

#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define LL long long#define inf 1<<31#define mod 1000000007#define N 40100in

2015-11-20 15:39:40 233

原创 HDU 4771 Stealing Harry Potter's Precious

A 点击打开链接#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define LL long long#define inf 0x3f3f3f3f#define N 110struct node

2015-10-13 18:09:53 287

原创 POJ 2836 Rectangular Covering

B 点击打开链接#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define LL __int64#define inf 1999999999#define N 1010#define mod 1

2015-10-08 13:14:26 209

原创 POJ 2436

A 点击打开链接#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define LL __int64#define inf 1999999999#define N 1010#define mod 1

2015-10-08 10:31:53 345

原创 FZU 1719

U 点击打开链接  连通图缩点#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define LL long long#define inf 199999999#define N 3010int l

2015-10-07 21:24:39 267

原创 HDU 2874

P 点击打开链接#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define LL __int64#define inf 1999999999#define N 10010int p[N],ehe

2015-10-07 21:18:55 305

原创 HDU 2586

O 点击打开链接 离线做法,倍增法还不会#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define LL long long#define inf 199999999#define N 40010

2015-10-07 21:17:35 247

原创 HDU 3394

N 点击打开链接#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define LL long long#define inf 199999999#define N 10005int low[N],

2015-10-07 19:56:21 339

原创 HDU 2460

J 点击打开链接#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define LL long long#define inf 199999999#define N 200005int low[N]

2015-10-07 19:53:27 323

原创 HDU 3594

H 点击打开链接#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define LL long long#define inf 199999999#define N 20010int low[N],

2015-10-07 16:58:45 333

原创 HDU 2242

I  点击打开链接#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define LL __int64#define inf 1999999999#define N 10010#define mod

2015-10-07 16:49:37 278

原创 HDU 3639

点击打开链接 G#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define LL long long#define inf 199999999#define N 5010int low[N],d

2015-10-07 16:46:57 278 1

原创 HDU 3078

就是求最近公共祖先#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define LL long long#define inf 199999999#define N 80010int ans[N],d

2015-10-07 16:37:52 284

原创 HDU 3072

#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define LL long long#define inf 199999999#define N 50010struct node{ int

2015-10-07 15:55:29 248

原创 HDU 1827

#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define LL long long#define inf 1999999999#define N 1005#define max(a,b)(a>b?

2015-10-07 15:26:29 299

原创 HDU 3836

#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define LL long long#define inf 1<<30#define N 20010vectoredge[N];int low[N]

2015-10-07 15:21:42 254

原创 HDU 2767

#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define LL long long#define inf 1<<30#define N 20010vectoredge[N];int low[N]

2015-10-07 15:20:44 275

原创 HDU 1269

#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define LL long long#define inf 1<<30#define N 10010vectoredge[N];int low[N]

2015-10-07 15:19:15 256

原创 hdu 5495 LCS

#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define LL long long#define inf 199999999#define N 100010int a[N],b[N],c[N];

2015-10-04 16:33:29 266

原创 hdu 5496 Beauty of Sequence

点击打开链接#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define LL long long#define inf 199999999#define N 100010#define mod

2015-10-04 16:27:01 436

原创 [kuangbin带你飞]专题七 线段树

点击打开链接A(hdu 1166 敌兵布阵 )中文体面,线段树单点更新,求一段区间和#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;#define LL long long#define inf

2015-10-01 15:05:56 865

原创 Codeforces Round #298 (Div. 2) D. Handshakes 二分

D. Handshakestime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputOn February, 30th n students came in the Cente

2015-07-27 17:06:48 288

原创 字符消除

时间限制:1000ms单点时限:1000ms内存限制:256MB描述小Hi最近在玩一个字符消除游戏。给定一个只包含大写字母"ABC"的字符串s,消除过程是如下进行的:1)如果s包含长度超过1的由相同字母组成的子串,那么这些子串会被同时消除,余下的子串拼成新的字符串。例如"ABCCBCCCAA"中"CC","CCC"和"AA"会被同时消除,余下"A

2015-05-28 16:25:33 791 1

原创 hdu 1002

#include#includechar s1[1010],s2[1010];int main(){ int i,j,m,n,t,ca=1; int f1[1010],f2[1010],ans[1010]; scanf("%d",&t); while(t--) { scanf("%s%s",s1,s2); n=strl

2014-10-08 19:02:00 377

原创 poj 1598 Excuses, Excuses!

#include#includechar str1[25][100],str2[25][100],ch[100],str3[25][100];int m,n,ans[25];int judge(char c){ if(c>='a'&&c<='z') return 1; return 0;}void init(){ int i,j; for(i=0;i<n;i++) sc

2014-08-10 17:44:46 337

原创 hdu 1533 Going Home(KM)

#include#include#include#define max(a,b)(a>b?a:b)#define min(a,b)(a<b?a:b)#define inf 999999999#define size 110int n,m,map[size][size],lx[size],ly[size],match[size];int visitx[size],visity[siz

2014-08-01 15:23:24 382

原创 hdu 3605 Escape(多重匹配)

#include#include#define N 100005#define M 13bool map[N][M],vis[M];int m,n,match[M][N],lim[M],num[M];int find(int u){ for(int i=0;i<m;i++) { if(!vis[i]&&map[u][i]) { vis[i]=1; if(num

2014-07-30 22:39:42 393

原创 HDU 1498 50 years, 50 colors

#include#include#includeusing namespace std;#define size 110int map[size][size],use[size],vis[size],ans[size],k,n,match[size];int find(int u,int color){ int i,j; for(i=1;i<=n;i++) { if(!vi

2014-07-29 22:09:55 431

原创 HDU 1150 Machine Schedule(最小点覆盖)

最小点覆盖 = 最大匹配数

2014-07-29 14:34:26 374

原创 HDU 1151 Air Raid(最小路径覆盖)

#include#include#define N 1050int map[N][N],vis[N],match[N],m,n,k;int find(int u){ int i,j; for(i=1;i<=n;i++) { if(map[u][i]&&!vis[i]) { vis[i]=1; if(match[i]==-1||find(match[i]))

2014-07-29 14:31:41 463

原创 HDU 1068 Girls and Boys (二分图 最大独立子集)

#include#include#define M 510#define N 250010int head[M],next[N],key[N],match[M];int use[M],num,n;void add(int u,int v){key[num]=v;next[num]=head[u];head[u]=num++;}int find(int

2014-07-29 11:03:03 399

原创 HDU 1698 Just a Hook

#include#include#define size 100010struct node{ int l,r,sum,add;}tree[size<<2];void pushup(int n){ tree[n].sum=tree[n<<1].sum+tree[n<<1|1].sum;}void build(int l,int r,int root){ tree[root

2014-07-25 10:50:50 393

空空如也

空空如也

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

TA关注的人

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