自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 2017ICPC沈阳现场赛G(倍增思想)

Infinite Fraction PathTime Limit: 6000/3000 MS (Java/Others)    Memory Limit: 262144/262144 K (Java/Others)Total Submission(s): 279    Accepted Submission(s): 34Problem DescriptionThe

2017-11-08 14:51:21 990

原创 SPOJ COT2(树上莫队)

You are given a tree with N nodes.The tree nodes are numbered from 1 to N.Each node has an integer weight.We will ask you to perfrom the following operation:u v : ask for how many different in

2017-11-06 16:22:27 431

原创 2017CCPC秦皇岛H(二分 + 二分图的最大匹配数)

Prime SetTime Limit: 2 Seconds      Memory Limit: 131072 KBGiven an array of  integers , we say a set  is a prime set of the given array, if  and  is prime.BaoBao has just found an arr

2017-11-01 15:07:38 650

原创 kattis Grid MST (最小曼哈顿生成树)

Grid MSTThis is a very simple problem. You are given NN points. Some points may be repeated. The weight (distance) between two points is given by the Manhattan distance between the two point

2017-10-24 17:13:48 573

原创 UVA6642(树的点分治)

题意:给你一颗树,树上的每个顶点有一个权值,给定一个数k,让你找一条路径,使得这条路径上的点的权值的乘积模上一个数后等于k.解题思路:这是一道树分治的经典题目,也是我做的第一道树分治的题目,这题的话比较简单,几乎模板,需要注意的地方是逆元要一次求出,还要注意一下hash的地方,写的太丑会t.#include using namespace std;typedef lon

2017-10-23 20:52:06 335

原创 Nordic Collegiate Programming Contest 2017 题解

前几天打了一场外国人的比赛,感觉那边的题目质量还是很好的,区分度很鲜明,题目没有国内的难,坑点比较少,比较注重思维,基础算法。B题:Best Relay TeamPicture by Fernando Frazão/Agência Brasil, cc byYou are the coach of the national ath

2017-10-11 18:18:37 1383

原创 ac自动机最详细的讲解,让你一次学会ac自动机。

在没学ac自动机之前,觉得ac自动机是个很神奇,很高深,很难的算法,学完之后发现,ac自动机确实很神奇,很高深,但是却并不难。 我说ac自动机很神奇,在于这个算法中失配指针的妙处(好比kmp算法中的next数组),说它高深,是因为这个不是一般的算法,而是建立在两个普通算法的基础之上,而这两个算法就是kmp与字典树。所以,如果在看这篇博客之前,你还不会字典树或者kmp算法,那么请先学习字典树或者km

2017-05-02 19:51:08 68974 21

原创 数据结构-树堆(Treap)

现在给你一个问题,每次右两种操作,第一种操作是向集合中添加一个数x,第二种操作是询问集合中不大于k的最大的数是多少。现在我们不用任何stl里面的容器的情况下,你要怎样解决这个问题呢?一个最暴力的方法是,从一个数组存数,然后每次询问去遍历这个数组,这样每次插入数的时间复杂度是O(1),而查询时间复杂是O(n),所以这种方法对于查询操作比较多时,会很慢.有基础的同学可能会想到用二分去找,但是用二分必须...

2018-05-09 09:00:01 419

原创 数据结构-Heap(堆)

好久没有写博客了,感觉学的东西都快忘完了。这几天准备学下平衡树的知识,不过在学习那之前还是先学习一下更为基础的一种数据结构Heap,我们称为堆。先说下什么叫做堆,堆有小根堆和大堆根,首先堆的本质是一棵完全二叉树。跟二叉搜索树的区别在于,二叉搜索树的特点是左子树上的所有节点的值都小于根节点的值,右子树上的所有节点的值都大于根节点的值。然后对于每棵子树,都是一棵二叉搜索树。根据二叉搜索树的定义我们容易...

2018-05-06 17:43:26 666

原创 HDU2476(区间dp)

String painterTime Limit: 5000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 4905    Accepted Submission(s): 2316Problem DescriptionThere are t

2017-10-17 18:50:37 291

原创 POJ1195(树状数组)

Mobile phonesTime Limit: 5000MS Memory Limit: 65536KTotal Submissions: 20799 Accepted: 9619DescriptionSuppose that the fourth generation mobile phone base station

2017-10-10 16:40:33 781

原创 POJ2195(最小费用最大流)

Going HomeTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 23761 Accepted: 11948DescriptionOn a grid map there are n little men and n houses. In each uni

2017-10-03 17:12:17 1485

原创 二项式反演

今天俊成问了我一个有意思的组合数学问题:给你n的格子(排成一行),给你k种颜色,问你有多少种方法,使得没有两个相连的格子颜色相连,且每种颜色都要用到的方案数。数学弱渣表示想了很久没有头绪,看了题解,发现都是用容斥做的,容斥?不是我最喜欢的吗?为什么我一点都没有想到,结果这个容斥跟我们平时的有点不一样,最后发现有个二项式反演的东西,很有用,网上简单学了一下,先把公式放这里,有时间用这个公式做下题:

2017-10-03 17:05:29 2760 2

原创 POJ3281(最大流)

DiningTime Limit: 2000MS Memory Limit: 65536KTotal Submissions: 19600 Accepted: 8716DescriptionCows are such finicky eaters. Each cow has a preference for certain

2017-10-01 14:50:31 251

原创 POJ3436(最大流)

ACM Computer FactoryTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 8309 Accepted: 3017 Special JudgeDescriptionAs you know, all the computers used

2017-09-30 13:56:23 327

原创 864F(tarjan思想)

F. Cities Excursionstime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputThere are n cities in Berland. Some pa

2017-09-29 21:03:25 268

原创 UESTC1722(二分)

越快越好!Time Limit: 3000/1000MS (Java/Others)     Memory Limit: 65535/65535KB (Java/Others)Submit Status假期将至,潘警长打算带n个实习步行出去巡逻,他们正通过一条长l米的通道。每个见习的速度恒定为v1米每秒。为了尽快通过这条通道,大家向总部请求了

2017-09-28 18:39:14 243

原创 864E(dp + 线段树优化)

E. Firetime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputPolycarp is in really serious trouble — his house i

2017-09-27 16:54:30 250

原创 UESTC1712(Nim博弈)

七夜雪寂,一世人心Time Limit: 3000/1000MS (Java/Others)     Memory Limit: 65535/65535KB (Java/Others)Submit StatusNim游戏是一种传统的游戏,其套路也渐渐被人熟悉,大家都不喜欢这种一眼就看出输赢的游戏,因此有人修改了Nim游戏的规则:1.这仍然是一个二

2017-09-27 12:24:39 294

原创 UESTC1713(求两个圆的面积的交)

无关青云路,无关诗书,无你处,无江湖Time Limit: 3000/1000MS (Java/Others)     Memory Limit: 65535/65535KB (Java/Others)Submit Status每个圆的属性可以使用三个参数来描述,xx-圆心横坐标,yy-圆心纵坐标,rr-半径,现给出两个圆分别的参数,求两个圆相交的面

2017-09-26 21:10:57 457

原创 2017icpc北京网络赛c题(最大连续子段和)

时间限制:1000ms单点时限:1000ms内存限制:256MB描述Once upon a time, there was a little dog YK. One day, he went to an antique shop and was impressed by a beautiful picture. YK loved it very much.H

2017-09-26 17:58:41 632

原创 2017icpc北京赛区网络赛E题(计算几何)

时间限制:1000ms单点时限:1000ms内存限制:256MB描述In 2333, the C++ Empire and the Java Republic become the most powerful country in the world. They compete with each other in the colonizing the Ma

2017-09-23 19:23:22 1338

原创 POJ2369

PermutationsTime Limit: 1000MS Memory Limit: 65536KTotal Submissions: 3245 Accepted: 1766DescriptionWe remind that the permutation of some final set is a one-to-o

2017-09-22 18:02:52 365

原创 861D(字典树)

D. Polycarp's phone booktime limit per test4 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputThere are n phone numbers in Polycarp's contacts on his phone. Each number

2017-09-22 11:00:03 312

原创 POJ1469(匈牙利算法求二分图最大匹配)

COURSESTime Limit: 1000MS Memory Limit: 10000KTotal Submissions: 24326 Accepted: 9484DescriptionConsider a group of N students and P courses. Each student visits

2017-09-21 18:08:33 456

原创 HDU6194(后缀数组 + rmq)

string string stringTime Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 1672    Accepted Submission(s): 482Problem DescriptionUncle

2017-09-18 15:29:17 509

原创 hihoCoder1403(后缀数组 + 二分)

时间限制:5000ms单点时限:1000ms内存限制:256MB描述小Hi平时的一大兴趣爱好就是演奏钢琴。我们知道一个音乐旋律被表示为长度为 N 的数构成的数列。小Hi在练习过很多曲子以后发现很多作品自身包含一样的旋律。旋律是一段连续的数列,相似的旋律在原数列可重叠。比如在1 2 3 2 3 2 1 中 2 3 2 出现了两次。小Hi想知道一段旋

2017-09-17 09:37:36 262

原创 BZOJ2154(莫比乌斯反演)

2154: Crash的数字表格Time Limit: 20 Sec  Memory Limit: 259 MBSubmit: 4342  Solved: 1572[Submit][Status][Discuss]Description今天的数学课上,Crash小朋友学习了最小公倍数(Least Common Multiple)。对于两个正整数a和b,LCM(a, b)表示

2017-09-12 21:15:35 285

原创 HDU6201(spfa)

transaction transaction transactionTime Limit: 4000/2000 MS (Java/Others)    Memory Limit: 132768/132768 K (Java/Others)Total Submission(s): 842    Accepted Submission(s): 411Problem Descrip

2017-09-11 20:43:43 228

原创 HDU4947(莫比乌斯反演 + 树状数组维护)

GCD ArrayTime Limit: 11000/5500 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 1445    Accepted Submission(s): 430Problem DescriptionTeacher Mai finds th

2017-09-08 21:01:38 344

原创 BZOJ3259(莫比乌斯反演 + 树状数组 + 离散处理 + 极性函数)

3529: [Sdoi2014]数表Time Limit: 10 Sec  Memory Limit: 512 MBSubmit: 2049  Solved: 1027[Submit][Status][Discuss]Description    有一张N×m的数表,其第i行第j列(1 能同时整除i和j的所有自然数之和。给定a,计算数表中不大于a的数之和。I

2017-09-07 19:08:02 363

原创 HDU6183(线段树)

Color itTime Limit: 20000/10000 MS (Java/Others)    Memory Limit: 132768/132768 K (Java/Others)Total Submission(s): 302    Accepted Submission(s): 62Problem DescriptionDo you like pain

2017-09-01 12:41:15 848

原创 HDU6191(dfs序 + 可持久Trie树)

Query on A TreeTime Limit: 20000/10000 MS (Java/Others)    Memory Limit: 132768/132768 K (Java/Others)Total Submission(s): 54    Accepted Submission(s): 17Problem DescriptionMonkey A l

2017-08-31 19:50:26 1290 1

原创 HDU5542(dp + 树状数组)

The Battle of ChibiTime Limit: 6000/4000 MS (Java/Others)    Memory Limit: 65535/65535 K (Java/Others)Total Submission(s): 1905    Accepted Submission(s): 669Problem DescriptionCao Cao

2017-08-30 17:04:32 279

原创 acm 读入挂

有时候题目有大量的输入,而题目本身时间卡的很紧,这时候就需要一个读入挂来搞一搞了,不多说,下面是代码inline bool scan_d(int &num){ char in;bool IsN=false; in=getchar(); if(in==EOF) return false; while(in!='-'&&(in'9'

2017-08-30 14:02:01 1064

原创 1153 - 无影的神之右手(莫队算法)

1153 - 无影的神之右手Time Limit:4s Memory Limit:512MByteSubmissions:261Solved:31DESCRIPTION觉不觉得这几个图很有毒啊?其实这几个不算很有毒吧~由乃懒得写题面了,反正写了也没人看,所以直接说题意吧~给你一个序列a,每次查询一个区间[l,r]的乘积

2017-08-30 13:52:29 436

原创 86D(莫队算法)

D. Powerful arraytime limit per test5 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputAn array of positive integers a1, a2, ...

2017-08-29 11:38:04 339

原创 BZOJ2038(莫队算法)

2038: [2009国家集训队]小Z的袜子(hose)Time Limit: 20 Sec  Memory Limit: 259 MBSubmit: 11377  Solved: 5080[Submit][Status][Discuss]Description作为一个生活散漫的人,小Z每天早上都要耗费很久从一堆五颜六色的袜子中找出一双来穿。终于有一天,小Z再也无法忍受这恼

2017-08-28 18:26:30 286

原创 c++ 手动扩栈

有时候,我们需要dfs,但是当dfs深度较大时就会爆栈,这时候我们就需要手动扩栈,下面是实现代码:#define OPENSTACK#includeusing namespace std;int main(){ #ifdef OPENSTACK int size = 64 << 20; // 64MB char *p = (char*)ma

2017-08-28 11:16:00 1509

原创 玲珑杯round #20 E(主席树)

造物主的戒律,空气,变成数据结构!于是空气变成了数据结构~给你一个序列,每次查询区间中小于等于x的所有数字里面第k1k1小的值以及大于x的所有数字里面第k2k2小的值,如果不存在,输出-1每次输出两个数,对于每个数如果不存在,则单独输出-1INPUT第一行两个数n,m第二行n个数表示序列a后面m行每行五个数l,r,x,k1,k2OUT

2017-08-28 10:31:43 446

空空如也

空空如也

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

TA关注的人

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