HDU 5999

题意:         T 组数据 , 每组数据 N 个数据 , 每个 数在1000以内。         买 N 个东西,买 2 送一 ,问买所有东西的最小话费。 思路:         排个序就行 代码: #include #include #include using na...

2017-01-29 12:52:13

阅读数 372

评论数 0

CodeForces - 733D Kostya the Sculptor (STL SET)

题意: 小K是个打磨高手,她能把所有的石头打磨成球形。 小Z是小K的好朋友,她有n块非常珍贵的石头,想在小K生日那天送给小K,但最多送两块. 石头是长方体状的,第 i 块石头的长宽高分别为 ai, bi , ci.  小Z有一瓶宇宙级强力粘合胶,它可以用于粘合石头。小Z知道小K的爱好,为了让小...

2017-01-27 11:57:48

阅读数 145

评论数 0

CodeForces - 519D A and B and Interesting Substrings (前缀和)

题意:         每个字母都有一个值,给你字符串s,求有多少个子串满足:         1.头尾字符相同         2.除了头尾字符,中间字符值的和为0 思路:         一开始想复杂了,又是区间查询,又是尺取法的,发现不行还得DP。其实维护每个字母的前缀和就行。...

2017-01-26 10:20:17

阅读数 159

评论数 0

CodeForces - 272C Dima and Staircase (线段树区间更新)

题意:         见以下样例,给出 5 个区间,每个区间的高度已知。一共 4 次操作。每次操作都是从最左边开始向下垒一个宽为 w 高为h 的木块,过程见下图。         问每次垒木块的高度是多少? Input 5 1 2 3 6 6 4 1 1 3 1 1 1 4 3 O...

2017-01-24 13:46:47

阅读数 160

评论数 0

CodeForces - 722C Destroying Array (set)

题意:         给出一个长度为 N 的数串,每次从数串中删去一个数,问每次操作后数串中最大连续和是多少? 思路:         利用 set 维护 断点集 O(logn)         利用 multiset 维护 线段长度集 O(logn)         利用 从数串头开...

2017-01-23 14:32:47

阅读数 133

评论数 0

CodeForces - 527C Glass Carving (二分+set) 多维矩形切割问题

题意:         给出一个高为 H ,宽为 V 的矩形。要经过 N 次切割,问每次切割后最大的一块是多少? 思路:        为简化思考,本题题意为二维切割,我们不妨先考虑将问题转化为一位线段的切割问题思考。        我们可以通过维护 切点 及 从每个切点开始的线段长度 得知每次操...

2017-01-22 21:46:03

阅读数 368

评论数 0

CodeForces - 349B Color the Fence (思维)

题意:         九个数字,从一到九,每个数字的花费为 a[i] ,问总花费不多于 N 时,组成的最大的数是多少? 思路:         先用权值小的数字占位,多余出的价值更新每一位为大些的数字即可 代码: #include using namespace std; int n; ty...

2017-01-19 15:05:45

阅读数 226

评论数 0

CodeForces - 518C Anya and Smartphone

题意: 安雅购买了一只带有Berdroid操作系统的智能手机。智能手机菜单中有n个应用,每个应用程序都有其自己的图标。每个应用的图标都在相应的屏幕上,一个屏幕包含ķ个图标。第1个应用到第k个应用的图标位于第一个屏幕上,从第(k + 1)个至第2k个应用在第二个屏幕上,依次类推(最后屏幕可...

2017-01-19 01:21:23

阅读数 202

评论数 0

bzoj 1588 营业额统计 (STL SET)

题意:         中文 思路:         利用 set 维护营业额,每次计算从 set 中找到与当前营业额差值最小的那个就行。 代码: #include using namespace std; set sett; set ::iterator it,it2; int...

2017-01-17 12:02:39

阅读数 232

评论数 0

POJ 3481 Double Queue (STL SET)

题意:         模拟一个有序双端队列,可以执行如下操作         0 代表停机         1  X  Y 代表插入一个数 X 它的权重为 Y         2  代表输出权重最大的数并从队列中删除         3  代表输出权重最小的数并从队列中删除 思路: ...

2017-01-17 11:58:27

阅读数 198

评论数 0

POJ 3468 A Simple Problem with Integers (线段树区间修改查询)

题意:         N个数,M次操作。每次操作 Q  X  Y 代表查询 X 到 Y 的区间和, C  X  Y  Z 代表将区间 X 到 Y 中的所有数加 Z 思路:         线段树区间修改,查询。 代码: #include #include #include using na...

2017-01-17 11:52:02

阅读数 151

评论数 0

CodeForces - 276C Little Girl and Maximum Sum (扫描线)

题意:         有若干对区间和的查询,问如何重组数组使查询结果的和最大。N为区间长度,M为查询次数。 思路:         统计出每一个位置出现的次数,统计的过程利用扫描线,然后当然出现最多的那个位置放最大的数,然后相乘累加就行 代码: #include using nam...

2017-01-15 17:36:18

阅读数 199

评论数 0

CodeForces - 501B Misha and Changing Handles (map双向)

题意: N 组修改,每组将一个老字符串改成新字符串,问层层修改后最初的字符串和现在的字符串分别是什么?输出一共有几组字符串,输出顺序随意。 思路: 题目很简单,就是 x 对应 y , y 对应 x ,写两个 map 就行。但涉及到对双向 map 的一些思考。 代码: #include ...

2017-01-14 19:28:55

阅读数 193

评论数 0

CodeForces - 757B Bash's Big Day (分解素因子)

题意:         给出N个数,从中挑选几个数,要求每个数的 gcd 不等于 1 ,问满足条件的数集最大有几个数? 思路:         将每个数进行素数分解,统计素数出现的次数,素数中出现最多次的,就是所求最大数集的gcd,答案就是它出现次数。         注意到数字1的特殊性,所以在...

2017-01-14 09:31:49

阅读数 629

评论数 0

CodeForces - 650A Watchmen (握手定理)

题意: 给出 N 个坐标点,求有多少对点的坐标满足|xi - xj| + |yi - yj|=.。 思路: 推导后发现 当两点的一个坐标相同时满足条件。      所以求出每种 X 坐标和每种 Y 坐标的重复次数,利用握手定理。得满足题意的点对数为      其中 q 为 X 坐标的种类, X[i...

2017-01-13 22:54:57

阅读数 255

评论数 0

CodeForces - 427B Prison Transfer

题意:         给出一个长度为N的数串,问串中有几个数字大于T,长度为C的子串 思路:         扫一遍即可 代码: #include using namespace std; const int MAXN=2e5+100; long long a[MAXN+10]; int m...

2017-01-12 16:29:57

阅读数 245

评论数 0

CodeForces - 514B Han Solo and Lazer Gun

题意:         给出N个点,和起始点X0,Y0,求N个点中有几组不同斜率与原点连接后斜率不同的点 思路:         考虑到可能出现的精度丢失,使用的分数的形式表示每个斜率,再用map去重就可以了 代码: #include #include using namespace...

2017-01-12 15:59:48

阅读数 188

评论数 0

CodeForces - 466C Number of Ways (前后缀和)

题意:         给出一串数,问将这串数分成三段每段和相同的分法有多少种? 思路:         本题若是要求分成两段那就十分简单,直接扫一遍找前缀和是总和一半的位置就可以。那么分成三段也可以这样想。         我们先求串的前缀和和后缀和,分别找到符合三分之一总和的位置 i 和 j ...

2017-01-12 11:27:14

阅读数 385

评论数 0

CodeForces - 701D As Fast As Possible (数学推导)

一开始推以为要推出一个一元二次方程,然后二分解。后来越来越推不出,只好搜题解看看。 以下内容皆为转载,转自xgogoforit的博客 题意 开始的时候还没弄懂题意,以为就是一个追击问题的极限形式,但是样例都对不上。还有就是这句话as well as the reversal of t...

2017-01-08 11:49:02

阅读数 243

评论数 0

CodeForces - 701C They Are Everywhere (尺取法)

题意:         给你一个长度为N的串,求最短连续子串的长度。子串要包含原串所有字母。(本题只包含大小写字母) 思路:         这是一道尺取法的典型例题,通过开始点和结束点的移动取得子串,并判断是否符合题意。每个点只会被访问两次,时间复杂度为O(n)。         注:尺...

2017-01-07 18:27:38

阅读数 207

评论数 0

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