自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 HDU-2473 Junk-Mail Filter(并查集的删除)

题目链接题意:对n份邮件进行m次操作,操作分为两种:(1)M X Y:表示将右键X和邮件Y归为同一类邮件;(2)S X:表示将邮件X从X所属的一类邮件中取出(即X单独属于一类邮件)。 问m次操作后总的邮件种类是多少。分析:常规的并查集是无法进行删除操作的,因为一旦根节点发生变化,其子节点的根节点信息就会丢失,于是我们需要将其变形,设置虚拟节点。首先将0~n-1的根节点设为n~2n-1,将2

2016-08-24 10:35:21 531

原创 POJ-2566 Bound Found(尺取法变形)

题目链接题意:给出n个整数和k次查询,每次查询给出一个非负整数t,要求找到区间[i,j],使[i,j]内的数之和的绝对值与t的差距最小,每次查询输出和的绝对值和区间的左右端点。分析:首先预处理前缀和,用pair数组p保存前缀和及其对应的下标。然后对p按前缀和从小到大排序,排序后就可以用尺取法查询。#include#include#include#include#include

2016-08-22 16:36:20 452

原创 HDU-2461 Rectangles(容斥原理)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2461题意:给出n个矩形的左下角和右上角坐标,要求进行m次操作,每次对t个矩形进行涂色(给出这t个矩形的序号),要求计算出每次涂色时需要涂色的面积。(涂色可以覆盖,即每次操作不受前面任何操作的影响)。分析:矩形之间可以覆盖,每次操作要计算覆盖后图形的面积,这里就要用到容斥原理。每次操作时有如下关

2016-08-03 15:56:38 566

原创 BZOJ-4591 超能粒子炮·改(lucas定理+预处理)

题意:求[C(n,0)+C(n,1)+...+C(n,k)]%2333的值。分析:因为n和k的值太大,不能直接预处理组合数,由lucas定理:C(n,k)%mod=C(n/mod,k/mod)*C(n%mod,k%mod)%mod,可得到如下结果便于说明,记[C(n%mod,0)+C(n%mod,1)+...+C(n%mod,mod-1)]%mod=∑C(n%mod,0~mod-1)a

2016-08-03 11:18:09 783

原创 HDU-4196 Remoteland(数论)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4196题意:给出一个正整数n,求出一个最大的数,这个数满足是由[1,n]之间不同的数相乘得到,并且这个数是完全平方数。分析:乘积最大的数是n!,因为n!可以拆成一堆素数的乘积,只需要剔除n!里面多余的素数即可。如果n!里面包含的素数因子的指数是奇数,则需要剔除一个这样的素数才能构成平方数,是偶数

2016-08-03 09:04:30 601

原创 POJ-3974 Palindrome(manacher算法)

题目链接:点击打开链接经典的求最长回文子串题目,需要用到manacher算法。manacher算法的具体介绍:http://blog.csdn.net/ggggiqnypgjg/article/details/6645824#include#include#include#include#includeusing namespace std;const int maxn=1

2016-07-29 10:13:25 353

原创 POJ-2689 Prime Distance(两次素数筛+偏移处理)

题目链接:点击打开链接题意:求区间[a,b]内距离最小的两个素数和距离最大的两个素数。若存在就输出它们的信息,不存在输出"There are no adjacent primes."分析:由于a和b的范围可达到int上限,如果采取常规素数筛空间是不够用的,只能采取其它的思路。要筛出int范围内的合数,这些合数的最大质因数一定是小于INF^0.5(小于50000),可以先用常规线性筛筛出50

2016-07-27 16:46:34 474

原创 codeforces-385C Bear and Prime Numbers(素数筛选法+维护前缀和)

题目链接:点击打开链接题意:求在区间[a,b]内所有素数的f(x)之和,f(x)为在数组中能整除x的数的个数。例如长度为6的数组{5,5,7,10,14,15},给出区间[2,11],则f(2)=2,f(3)=1,f(5)=4,f(7)=2,f(11)=0.          ∑[f(x)]=f(2)+f(3)+f(5)+f(7)+f(11)=9.分析:先用数组b[i]记录输入

2016-07-27 10:57:42 514

原创 HDU-1829 A Bug's Life(并查集)

题目链接:点击打开链接题意:昆虫有两种性别:雌性和雄性,给出m对昆虫的编号,表示每对昆虫是异性关系,问是否存在矛盾,即可能有一对是同性关系分析:可以将同性关系的昆虫合并入并查集,当某对昆虫的根结点相等(即是同性关系)时,这时存在矛盾, 如果所有对昆虫的根结点都不相同(即表示所有对昆虫都是异性关系),这时不存在矛盾。因为输入的每一对昆虫事先被确定为异性关系,所以可以用数组sex[i]表示和i

2016-07-25 14:20:32 397

原创 codeforces-407B Long Path(dp)

题目链接:点击打开链接题意:一个人要从房间1走到房间n+1,每走到一个房间要在此进行一次标记,每走到一个房间有两种行走的方式,若标记次数为奇数则采取方式1:走到房间p[i],1分析:设dp[i]为第一次走到房间i时行走的步数,此时房间1到房间i-1的标记都是偶数次,因为第一次行走到房间i后房间标记为1(奇数),所以要往回走走走到房间p[i],再从房间p[i]走x步再次到达房间i时才能走到房

2016-07-23 21:12:08 415

原创 HDU-2955 Robberies(小数01背包)

题目链接:点击打开链接题意:一个人要去抢银行,给出n个银行各自的总存款和此人在这个银行被抓的概率,求出被抓概率小于p的情况下最多能抢多少钱。分析:我开始把概率p乘以10^5转换为整数当作背包容量来求解wa了,可见数据的精度比1e-5还要小,用这种思路来解决问题是行不通的,需要转换思路。          此题需要将银行总的钱数sum当作背包容量,求出在不同的钱数i下此人逃跑的概率dp[

2016-07-22 15:55:15 958

原创 codeforces-121E Lucky Array(树状数组)

题目链接:点击打开链接题意:如果一个数每个十进制位上的数字是4或7,那么这个数字被称为“幸运数字,现”给出一个长度为n的数组,要求进行m次操作,这些操作包含两种:1.更新操作,将第l到第r之间的数都加上d   。2.查询操作,查询第l到第r个数中有多少个“幸运数字”。分析:典型树状数组题目,需要注意判断一个数是否为“幸运数字”时不用遍历这个数字的每一位数,因为数字最大为10^5,只

2016-07-21 20:01:51 701

原创 UVA-562 Dividing coins(01背包)

题目链接:点击打开链接题意:将m个含有不同价值的硬币分成两堆,使两堆硬币总价值之差最小分析:设所有硬币的总价值为sum,将其中一堆硬币的问题看成01背包问题(一个总容量为sum/2的背包,将所有硬币任意往里放,使包内所有硬币的总价值最大)。状态数组dp[j]=0 or 1表示这些硬币能否组成总价值为j的状态,从sum向下枚举,更新状态数组的值。接着i从sum/2向下枚举到0,找到最大的i能

2016-07-20 20:38:17 604

原创 codeforces-305A Strange Addition

题目链接:点击打开链接之前一直理解错题意,以为两个数字里面任意一个数含有0就能相加,结果各种wa。。。其实题目说的意思是两个数如果在任意十进制位至少有一个数含有0才可以相加,比如505和50可以相加(50可以看成050,在个十百位上505和050这两个数至少一方含有0),而50和25不能相加(在十位上两方都不含有0),理解清楚题意后直接暴力求解就可以了#include#inc

2016-07-20 14:42:58 683

原创 codeforces-57C Array(找规律+逆元)

题目链接:点击打开链接题意:给出一个整数n,要求找到长度为n的数组,满足该数组的元素是有[1,n]内的任意元素组成的,且该数组为非递减数组或非递增数组,求满足条件的数组的总个数。分析:因为非递减数组和非递增数组具有对称性,可以只讨论非递减数组的个数,设其为x,则总个数为2x-n(n为非递减数组和非递增数组交叉的部分,即既不递减也不递增)。通过分析讨论结果可以得到总个数为C(2n,n)-

2016-07-20 14:26:43 654

原创 HDU-4536 XCOM Enemy Unknown(dfs暴搜)

题目链接#include#include#include#include#includeusing namespace std;typedef long long ll;const int maxn=20,maxk=105;int n,m,k;struct node{ int num,sca;};node s[maxn];int a[maxk][3];

2016-07-19 09:53:09 391

原创 HDU-4339 Query(树状数组+二分)

点击打开题目链接题意:给出长度分别为l1和l2的字符串s1和s2,要求进行k次操作,每次操作输入的第一个数如果是1,接着就输入两个整数a,i和一个字符c,要求将第a个字符串的下标为i的字符换位c。如果输入的第一个数是2,紧接着就输入一个数字i,要求找到一个最大的数字j,使得在区间[i,j)中两个字符串的字符相等。分析:之前看到题目给了10s直接暴力求解TLE了。。。后来从别人的题解

2016-07-18 23:38:00 504

原创 codeforces-327C Magic Five(等比数列求和+快速幂+逆元)

点击打开题目链接题意:给出一个字符串a和一个整数k,表示这个字符串s是由k个 a连接得到的,要求任意删除字符串s中的任意位上的字符,使得删除后的字符串表示的数能被5整除。题目说明所求结果可能包含前导0的情况,即5和05算两种情况。分析:要使这个数能被5整除,则删除后的字符末尾数字一定是5或0,这时只用枚举a的各位字符,如果遇到字符0或5就计算当前情况的总个数(2^i),而后面的k个串的相同

2016-07-18 23:02:53 816

原创 LightOJ - 1067 Combinations(快速幂+逆元)

DescriptionGiven n differentobjects, you want to take k of them. How many ways to can do it? For example, saythere are 4 items; you want to take 2 of them. So, you can do it 6 ways. Take 1,

2016-07-10 10:27:40 523

原创 HDU 3714 Error Curves(三分查找)

题目链接题意:这题题意比较难读懂,题目的意思是给出一系列的一元二次曲线Si(x),F(x)为定义域内每一个x对应的Si(x)最大值点组成的曲线,求F(x)的最小值。分析:由于a>=0,开口向上已确定,所以F(x)一定是凹曲线,故可以用三分查找法找出它的极值点,然后求出该极值点对应的最小值。注意求解F(x)在任一点的函数值时要注意枚举ai,bi,ci,从而求出Si(x)在该点的最大值

2016-07-09 18:50:42 487

原创 HDU 3866 Moonfang's Birthday(贪心)

题目链接题意:n人合伙买一件价格为p的礼物,每个人有自己能承担的最大费用,要保证尽可能公平,使付钱多的人和付钱少的人钱数的差距尽可能小,如果存在矛盾,先来的人比后来的付钱多。分析:要使尽可能公平,可以先将总价格平分,如果有人能承担的最大费用比平均价格要少,则要支付自己全部的钱,然后剩余的钱由其它人循环按照此法解决,当最终剩余的人能承担的最大费用都比当前平均费用多时,则按照题目规

2016-07-09 15:17:09 470

原创 HDU 2425 Hiking Trip(bfs+优先队列)

DescriptionHikingin the mountains is seldom an easy task for most people, as it is extremelyeasy to get lost during the trip. Recently Green has decided to go on a hikingtrip. Unfortunately, half wa

2016-07-08 22:33:37 407

原创 HDU 2832 Snail’s trouble(数学题)

DescriptionOnceupon a time, there was a poor snail. Every day, it tried very hard to crawlforward, while there was a keeper who’d like to maltreat this poor littlesnail. The snail was crawling on a

2016-07-08 19:45:43 412

空空如也

空空如也

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

TA关注的人

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