自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 POJ2777

题目描述:色板长度为L,L是一个正整数,所以我们可以均匀地将它划分成L块1厘米长的小方格。并从左到右标记为1, 2, ... L。现在色板上只有一个颜色,老师告诉阿宝在色板上只能做两件事:1. "C A B C" 指在A到 B 号方格中涂上颜色 C。2. "P A B" 指老师的提问:A到 B号方格中有几种颜色。学校的颜料盒中一共有 T 种颜料。为简便起见,我们把他们标记为 1, 2, .

2017-08-29 15:39:15 1431 2

原创 关押罪犯(noip2010)

题目描述S 城现有两座监狱,一共关押着N 名罪犯,编号分别为1~N。他们之间的关系自然也极不和谐。很多罪犯之间甚至积怨已久,如果客观条件具备则随时可能爆发冲突。我们用“怨气值”(一个正整数值)来表示某两名罪犯之间的仇恨程度,怨气值越大,则这两名罪犯之间的积怨越多。如果两名怨气值为c 的罪犯被关押在同一监狱,他们俩之间会发生摩擦,并造成影响力为c 的冲突事件。每年年末,警察局会将

2017-08-28 16:01:35 347

原创 二分图判断

洛谷1330:曹是一只爱刷街的老曹,暑假期间,他每天都欢快地在阳光大学的校园里刷街。河蟹看到欢快的曹,感到不爽。河蟹决定封锁阳光大学,不让曹刷街。阳光大学的校园是一张由N个点构成的无向图,N个点之间由M条道路连接。每只河蟹可以对一个点进行封锁,当某个点被封锁后,与这个点相连的道路就被封锁了,曹就无法在与这些道路上刷街了。非常悲剧的一点是,河蟹是一种不和谐的生物,当两只河蟹封锁了相邻

2017-08-28 15:52:41 483

原创 codeforces 845B

题目大意:给一个长度为6的字符串,可以使任意数变为另一个数,问最多需要几次变换使前三个数的和等于后三个数的和做法:我刚开始用了一个6*10^6的做法,暴力枚举出所有可能的前三位和等于后三位的数,然后判断要改变几次,去min。代码如下:#include#include#include#include#include#includeusing namespace std;ch

2017-08-28 14:34:37 514

原创 树剖

今天做了一道题目:提高组2013年Day1T3。这题有一种LCA的做法,我之前写过,最近新学了树链剖分,心血来潮写了一下,发现要把边权转换成点权(因为树剖好像只能解决点权的问题,反正我是这么理解的)发现有好多好多的坑点套路和注意点都在代码旁边的批注上代码如下:#include#include#include#include#include#include#def

2017-08-28 12:53:00 979

原创 最大正方形问题(DP)套路

最大正方形问题的转移方程:f[i][j]=min(f[i-1][j-1],f[i-1][j],f[i][j-1])+1.那么是什么意思呢?f[i][j]表示以(i,j)为右下角的最大正方形的变成。那么f[i][j-1]就保证了往上最多能扩展的边长。f[i-1][j]就保证了往左边能扩展的最大边长。f[i-1][j-1]就保证了对角线的最大长度。三者去min,然后+1,就是f[i][

2017-08-26 10:20:49 894

原创 套路题

题目大意:一共有n件食材,每件食材有三个属性,ai,bi和ci,如果在t时刻完成第i样食材则得到ai-t*bi的美味指数,用第i件食材做饭要花去ci的时间。众所周知,gw的厨艺不怎么样,所以他需要你设计烹调方案使得美味指数最大做法:遇到此类题目,我们应该首先考虑x和y食材在什么情况下x比y先做要来的优如果没有b[i]这个属性的话就是明显的01背包问题。

2017-08-26 09:15:17 1404

转载 给自己的

转载自:http://blog.youkuaiyun.com/clove_unique/article/details/50630280首先声明:万分感谢gty大哥的帮助!这年头能找到简单易懂的数组版平衡树模板只能靠学长了!变量声明:f[i]表示i的父结点,ch[i][0]表示i的左儿子,ch[i][1]表示i的右儿子,key[i]表示i的关键字(即结点i代表的那个数字),cnt[

2017-08-26 09:11:55 311

原创 写给我自己(2)

DP的套路题目:网格图中,每个图上面有价值,两个人连在一起,轮流取,让两个人和相同。一般状态方程:f[[i][j][k][p]:(i,j)为当前坐标,k为两人的差值,p为当前是谁取

2017-08-26 09:01:07 344

原创 写给自己的

每三天更新一次吧,把最近做的一些好的套路题放在这里。套路1:判断[l,r]区间的数能不能组成等差数列,如果可以那么:a[l+1]-a[l],a[l+2]-a[l+1]......a[r]-a[r-1]的绝对值的gcd等于k[l,r]区间最大数-最小数=(r-l)*k区间中没有重复的数套路2:区间加等差数列问题我们可以维护一个差分数组例如数组:3 2 5

2017-08-25 15:28:27 351

原创 codeforces 741B

题目大意:    有n个人,每个人都有对应的value值和weight值, 并且每个人都有自己的朋友圈,这个朋友圈的人要不全部参加party,否则至多只有一个人可以参加;题目分析:    分组背包,顺带处理所有人都参加的情况;      一个朋友圈就是一个分组,使用并查集可以很简单的完成分组的过程代码如下:#include#include#inclu

2017-08-22 21:24:34 315

原创 树链剖分

学了2天的树链剖分终于搞懂了,不容易啊~~~~(>_洛谷的3384是一道很好的模板题传送门:https://www.luogu.org/problem/show?pid=3384#sub代码如下:#include#include#include#include#include#include#define N 500005using namespace std;in

2017-08-22 21:19:18 255

原创 codeforces 741A

题目大意:很多个人,一次给对应的人打电话。第t个人就是第一个人的Joon-Joon。问t最小为多少可以让每两个人互为Joon-Joon。做法:对于每一个人我们求一次环的长度,然后如果是偶数除以2,然后把n个环长取一个最小公倍数就好了。其中特判一下不能构成环的情况即可。答案是会爆longlong的,第一遍我又没开,总是挂在这种傻傻的地方。代码如下:#i

2017-08-20 17:21:26 287

原创 codeforces 744A

题目大意:在一个星球上,有n个点,m条边,其中有k个点是不同国家的政府。 要求结点没有到自己的边,任意两个结点间只存在一条边,任意两个政府点之间不存在路径。 问满足上面三个条件下,最多往图中添加几条边。做法:codeforces还真够难得,这只是道A题啊!我们可以先判断满足上述三个条件时,最多能有多少条边。 首先找到每个政府点所在的树的点的个数cnt,产生的边的条数是cnt*(

2017-08-20 15:59:18 401

原创 codeforces 817D

题目描述:给定n个数,定义一个序列的价值为这个序列中最大值减去最小值,问n个数中所有连续的序列价值之和是多少。做法:拿到题目边立马想到了边行ans=a[i]*作为最大值的次数-a[i]*作为最小值的次数。那么怎么求这个次数呢?刚开始想到了一个n^2的暴力做法,向左边扩展找到第一个小于a[i]的数的位置记为l,然后向右边扩展找到第一个小于或等于a[i]的数的位置记为r。那么次数就

2017-08-20 13:58:11 347

原创 codeforces 817C

题目大意:给定n和s,求出1——n中有多少数满足该数减去其所有数位数字之和大于或等于s的性质做法:刚开始拿到题目以为是一个dp,但是发现弄不出来啊。后面发现了一个性质就是如果x满足该性质那么大于x的一切数也都满足于是这就变成了一个简单的二分答案的题目了,只要求出最小的满足该性质的数即可代码如下:#include#include#include#include#inc

2017-08-20 10:30:21 523

原创 codeforces 817B

题目大意:给定n个数,取出三个数是的三个数乘积最小,且满足位置关系i做法:这道题水的不行,分类讨论一下就行了,唯一的坑点就在于要开long long代码如下:#include#include#include#include#include#includeusing namespace std;int a[100005];int main(){ int n;

2017-08-19 23:04:05 349

原创 codeforces 817A

题目大意:给出四个数x1,y1,x2,y2。然后再给定两个数x和y。有以下四种操作:x1-x y1-y或x1-x y1+y或x1+x y1-y或x1+x y1+y。问是否可以经过若干次操作后是的x1,y1同时变成x2,y2做法:这是一道思维题,刚开始没有想到,后面发现和奇偶性有很大的关系显然让x1变成x2的最少次数一定是:abs(x2-x1)/x。那么就先让x1变成x2。

2017-08-19 22:29:21 329

原创 codeforces 816B

今天开始水codeforces上的题目了。题目大意:给定三个数n,k,q然后给出n个区间。接下来有q个询问,每次询问一个区间里有多少元素被这n个区间覆盖了超过k次。做法:一遍做就A了,写的方法有点傻逼,直接套了洛谷树状数组模板2,区间加,然后单点询问。然后构造前缀和,sum[i]表示1—i中有几个满足条件的。后面写完发现其实不用树状数组可以值O(n)用差分做。代码如

2017-08-19 22:19:12 333

空空如也

空空如也

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

TA关注的人

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