贪心
文章平均质量分 53
Grit_ICPC
Dielts
展开
-
最少拦截系统 SDUToj 2075
最少拦截系统Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^题目描述 某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统.但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能超过前一发的高度.某天,雷达捕捉到敌国的导弹来袭.由于该系统还在试用阶段,所以只有一套系统,因此有原创 2015-07-27 16:03:30 · 572 阅读 · 0 评论 -
计算机学院大学生程序设计竞赛(2015’12)(STL )
题目意思理解错了- -!不是每个宝盒对应的珠宝的和的价值的绝对值最小而是每个珠宝的。。。那么,直接就是枚举每个珠宝应该放入的宝盒就可以。但是查找的时候直接用STL中的lower_bound就可以(例如:r=lower_bound(b,b+m,a[i])-b它查找的是第一个大于等于a[i]的第一位置 (这是在普通的数组中,要是在set等容器中不需要b,b+m和-b等运算)如果所有元素都小原创 2015-12-30 11:17:26 · 575 阅读 · 0 评论 -
codeforces B - More Cowbell (贪心)
思路: 在一个箱子中最多装2个物品,那么在有n个箱子m个物品的情况下,会有n-m个箱子装两个物品,那考虑在这些需要装两个物品的箱子中,若想有最优的组合必定是最大的和最小的相组合。#include#include#include#include#include#include#define LL long long#define inf 0x3f3f3f3fusing原创 2015-12-03 12:20:50 · 455 阅读 · 0 评论 -
HDU 5610 Baby Ming and Weight lifting(贪心)
题目大衣:就是给定两个数a,b问能不能组成c,能就输出a+b数量的最小值否则就是Impossible思路:不知道枚举时必须是(tmp+t)*2==c最后两值同乘以2,要是(tmp+t)==c的话不对T_T.(求大神指教啊)#include#include#include#include#include#include#include#define inf 0x3f3f原创 2016-01-24 10:45:21 · 496 阅读 · 0 评论 -
Radar Installation
Radar InstallationTime Limit: 1000MS Memory Limit: 10000KTotal Submissions: 60281 Accepted: 13585DescriptionAssume the coasting is an infinite straight line. Land原创 2015-06-23 20:42:38 · 531 阅读 · 0 评论 -
Poj 2586
英语是硬伤原创 2015-06-24 15:40:37 · 633 阅读 · 0 评论 -
HDU 3356 ||POJ 3996Air Strike(贪心)
题意:给定两圆坐标,及面积和, 并且若干个点的坐标,问最少有多少点不再园内。思路:枚举一个圆的半径求另一个,并且两个圆都要枚举求最值。(因为PI值定义为int错了若干次- -)#include <iostream>#include<cstdio>#include<algorithm>#include<cstring>#include<cmath>#define LL __int64us原创 2016-03-04 15:13:10 · 391 阅读 · 0 评论 -
一个序列中有多少个子序列的两头是大于两端值的
示例输入 4 1 0 0 1 1 2 2 1 1 0 1 2 0 2 0 1 2 4 3 1 3 4 5 2 1 0 3 0 1 2 4 4 1 0 2 4 1 0 0 4 0 1 2 3 4 5 6 7 8 9 10 0 示例输出 1 4 2 8 3 6 4 10思路:直接枚举找当前序列最小值然后比较两端的数是不是小于这个最小值。#include<map>#include<q原创 2016-02-19 09:35:31 · 621 阅读 · 0 评论 -
Codeforces C - Bear and String Distance (贪心)
大意:给定一个长度为n的字符串,输出相差为m的字符串(任何一个),不存在为-1.思路:就是一个贪心,最值为当前字符到a或z的最大值的和。前边进行a,z,a,z的匹配,满足跳出条件前直接将当前的字符向前后者向后移动。最后字符长度直接拉下来即可- -。#include<map>#include<queue>#include<cmath>#include<iostream>#include<cs原创 2016-02-20 11:08:45 · 458 阅读 · 0 评论 -
codeforces 651B Beautiful Paintings(贪心)
大意:给定一列数问排列任意改变顺序使(a[i+1]>a[i])的最多数目。思路:n为1000,1<=a[i]<=1000所以直接哈希暴力,然后就是统计数目。#include <iostream>#include<string>#include<cstring>#include<cstdio>#include<algorithm>using namespace std;int ha[100原创 2016-03-11 14:13:23 · 360 阅读 · 0 评论 -
51nod 1276:岛屿的数量 (贪心)
题目大意:给定n个岛屿的高度,m个询问。当水到达一定的高度还有多少岛屿可以看到。思路:我们可以先对初始的岛屿,和询问进行排序,顺序会乱那么我们就可以 加一个id给他们编号。然后暴力枚举海水的高度看哪些岛屿会被淹没。并注意边界的控制。#include <iostream>#include<algorithm>#include<cmath>#include<queue>#include<map原创 2016-03-22 19:40:08 · 516 阅读 · 0 评论 -
浙江科技学院第十三届程序设计竞赛 1008 A Heavy Rainy Day 贪心
思路:可以分以最快和最慢的四个人为一组,或者最快的一个人和最慢的俩个人一组,比较用时最少的即可。#include<map>#include<queue>#include<cmath>#include<cstdio>#include<stack>#include<iostream>#include<cstring>#include<algorithm>#define inf 0x3f3原创 2016-03-28 16:38:18 · 772 阅读 · 0 评论 -
POJ 2287 Tian Ji -- The Horse Racing&&浙江科技学院第十三届程序设计竞赛1006 田忌赛马后传(贪心)
思路:如果田忌最慢的比齐王最慢的快,或者田忌最快的比齐王最快的快,那么就比,否则让田忌最慢的和齐王最快的比。#include<map>#include<queue>#include<cmath>#include<cstdio>#include<stack>#include<iostream>#include<cstring>#include<algorithm>#define inf原创 2016-03-28 17:46:16 · 548 阅读 · 0 评论 -
HDU 5256 序列变换 (LIS变形&&STL)
思路:有一点应该注意就是如果序列是2 3 3 3 4 最少修改的就是最后的3个数。我们可以先减去他的下标即得到的序列就是 2 2 1 0 0.(下标从0开始) 之后就是求出一个严格上升的序列,当不满足dp[cnt]#include<map>#include<queue>#include<cmath>#include<cstdio>#include<stack>#include<iostr原创 2016-03-28 20:43:13 · 390 阅读 · 0 评论 -
SDUT 2168 Mathmen(贪心)
大意:一个数轴上有n点,然后m行,为m个船的行驶距离和耗费。问能不能经过所有的点。 思路:判断大于等于当前的两岛间的距离,的最小的距离就是最优的。 #include #include #define LL long long using namespace std; LL arr[1000010],dis[1000010];原创 2016-05-02 23:13:23 · 341 阅读 · 0 评论 -
HDU 5242 Game (树上贪心|类 树链剖分)
大意:有向图给定n-1条边然后给出每个点的权值,每个点的权值只能累加一次,问从根节点走,可以走k次能累计的最大点权和。思路:本题可以进行两遍dfs操作,第一次为从叶子节点到跟节点的节点权值和。然后根据权值排序,然后根据排序后的下标,来进行第二遍dfs搜索即从当前到根节点的和。输出前k大值即可。#include #include#include#define inf原创 2016-05-08 21:16:26 · 765 阅读 · 0 评论 -
PAT 1020 完美数列(25)(贪心暴力)
给定一个正整数数列,和正整数p,设这个数列中的最大值是M,最小值是m,如果M 在一行中输出最多可以选择多少个数可以用它们组成一个完美数列。暴力查找的时候注意,优化,即在循环外层的时候,至少可以少跑ma个间隔,因为有之前的状态满足,只需找更大的。#include #include#include#include#include#include#include#in原创 2016-06-01 16:11:46 · 342 阅读 · 0 评论 -
B. Vika and Squares 610B(贪心)
看到这题首先想到的肯定是与最小值有关的,然后就是ans=min*n+X;再确定一下X的值的问题也就是让X尽可能的大,那么X的值要怎么来。由于这是个循环的数列,所以可以将数组以及输入的数均扩大二倍。再找到两个相邻最小值间的最大距离就可以。也就是X。#include#include#include#include#include#include#include#inclu原创 2015-12-28 17:15:36 · 487 阅读 · 0 评论 -
CodeForces 339B (贪心模拟)
题目大意:有n个数组成数环,有人在1点,给定m个数,代表在1处的人必须顺时针都到达这些点,的最少步数。找到数与数间的关心,就可以利用其特征进行求解。#include#include#include#include#include#include#include#include#define ll __int64#define inf 0x3f3f3f3fusin原创 2015-10-31 22:50:19 · 1090 阅读 · 0 评论 -
Codeforces Round #283 (Div. 1)解题报告A.B.C.
You are given an n × m rectangular table consisting of lower case English letters. In one operation you can completely remove one column from the table. The remaining parts are combined forming a new原创 2015-08-09 14:39:51 · 562 阅读 · 0 评论 -
4970 Killing Monsters(前缀和问题)(类线段树)
Problem DescriptionKingdom Rush is a popular TD game, in which you should build some towers to protect your kingdom from monsters. And now another wave of monsters is coming and you need again to kn原创 2015-08-29 09:45:35 · 717 阅读 · 0 评论 -
CodeForces 288A
A. Polo the Penguin and Stringstime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputLittle penguin Polo adores st原创 2015-08-29 19:38:22 · 634 阅读 · 0 评论 -
最长01串(贪心)
一行一个整数,最长的0与1的个数相等的子串的长度。101111111010示例输出204思路:统计0与1的个数在串里相同且最大长度。可以见0就让ans--,1就++,当值为0的时候就比较一下当前的ma与i+1的大小,但是有个问题就是当为000000000001111111111111(0的个数=1的个数)时会输出0,而不是20(假设1=原创 2015-08-30 21:34:43 · 1395 阅读 · 0 评论 -
UVa 11054 Wine trading (贪心)
题目大意: 街上有若人家相邻,有买酒有卖酒的,其中运酒需要运费,任何人都可以交易,问输入的序列最小运费是多少。 问题主要求解,运费最少的问题,若使运费少,必定是相邻的人进行买卖.因为所有人买和所有人卖数量都是一样的。所以如果卖>买可以将卖家多的部分放在买家里#include #include #include #include #include #include #原创 2015-08-07 08:48:17 · 472 阅读 · 0 评论 -
SDUTOJ 3306 英文题看不懂
思路: 弄懂题目大意后,我是以A矩阵为标准,来进行对B矩阵的匹对,但是不容易控制。看了别人的才想起也可以用B矩阵为标准,把A来匹对。#include#include#include#include#include#include#include#define ll long long#define inf 1000010+10using namespace std;原创 2015-09-09 19:35:26 · 615 阅读 · 0 评论 -
Codeforces Round #266 (Div. 2) C. Number of Ways
You've got array a[1], a[2], ..., a[n], consisting ofn integers. Count the number of ways to split all the elements of the array into three contiguous parts so that the sum of elements in each part原创 2015-08-21 10:37:27 · 769 阅读 · 0 评论 -
HDU 5491 The next(2015 ACM/ICPC Asia Regional Hefei Online )(贪心)
题目大意:求出一个数比给定的数D大并且此数的二进制中的1的个数再s1,s2之间.思路:如果直接通过D+1向后暴力的话,必定时超时的,因为输入为300000组,如果给个2^31的D,s1=1,s2=1,那么找每个二进制值0.1的个数就会执行30次,并且还有循环找数的过程所以会超时.不能直接对数就行操作,那么可以对当前的2进制的0.1进行操作,当D+1的二进制中的1>s2时,应原创 2015-09-28 17:11:01 · 505 阅读 · 0 评论 -
codeforces 577A(暴力枚举)
A. Multiplication Tabletime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputLet's consider a table consisting of原创 2015-09-17 10:36:09 · 654 阅读 · 0 评论 -
HDU 5504 GT and sequence(贪心)
题目大意:给定一个序列,任选出序列中的数字,并输出其组成的最大数.思路:就是一个简单的贪心吧,但是注意各组数据的各种坑.如当只有一个数的时候,permutation中含有0,其中有负数,0,正数等等情况.#include#include#include#include#include#define ll __int64#define inf 0x原创 2015-10-22 18:39:13 · 452 阅读 · 0 评论 -
HDU 5122 K.Bro Sorting
思路:从后往前将最后一个值设置为当前的最小值,从如果#include #include #include #include #include #include #define inf 0x3f3f3f3f#define ll __int64using namespace std;int Map[1000][1000],dis[1000],s,head[1000],re原创 2015-10-09 23:10:00 · 340 阅读 · 0 评论 -
Substrings HDU 2138 (STL +寻找相同串中的最大公共串(贪心))
思路:要找到所有的串的最大公共串,一定存在于最小的串中所以先找到最小的串,然后再找出这最小长度的母串的子串所能组成的序列,然后不停的和其他串像比较找到最长子串就可以.#include#include#include#include#include#include#define ll __int64#define inf 0x3f3f3f3fusing nam原创 2015-10-23 19:44:50 · 447 阅读 · 0 评论 -
scu1529: Equator (DP+贪心)
题目大意:有一个成环的序列,求选取其中一个一段最大的连续区间和.思路:1(无环)最大和不在两端,将一个环拆开,求这段序列的最大和.2(有环)最大和在两端,用全部的和减去最小连续区间和.#include #include #include #include #include using namespace std;int a[1000010];i原创 2015-10-11 11:02:44 · 417 阅读 · 0 评论 -
B. Cola (暴力+优化)
本题本想用背包但是,不会...暴力也可以#include #include #include #include #include #include #include#define inf 0x3f3f3f3f;#define ls l,mid,rt<<1#define rs mid+1,r,rt<<1|1#define maxn 10000000using namespa原创 2015-11-14 21:09:57 · 478 阅读 · 0 评论 -
HDU 5701 中位数计数 &&HDU 4908 Sequence &&百度之星 1006
中位数定义为所有值从小到大排序后排在正中间的那个数,如果值有偶数个,通常取最中间的两个数值的平均数作为中位数。现在有n个数,每个数都是独一无二的,求出每个数在多少个包含其的区间中是中位。思路:我们可以以当前的数为出发点然后先向前枚举,如果比当前数小,则cnt--,若大则cnt++,然后计数器++;再统计当前数后边的 ,和上一步类似的cnt--||++,最后统计区间的个数。原创 2016-05-22 20:21:00 · 446 阅读 · 0 评论