贪心
【杰杰】
这个作者很懒,什么都没留下…
展开
-
P1090 [NOIP2004 提高组] 合并果子 / [USACO06NOV] Fence Repair G
传送门 思路: 用优先队列(从小到大排序)储存数据,然后每次取出队顶的两个元素相加再放入队中,直到队中只剩下一个元素。 #include<bits/stdc++.h> using namespace std; # define ll long long priority_queue<int,vector<int>,greater<int> >a; int main() { int n; scanf("%d",&n); for(int i = 1原创 2021-03-05 11:40:08 · 141 阅读 · 0 评论 -
P1223 排队接水
传送门 思路: 用结构体储存相同用时的人的位置,在由小到大排。 #include<bits/stdc++.h> using namespace std; struct node{ int a; int pos[1010]; int k; }stu[1010]; bool cmp(node a, node b) { return a.a < b.a; } int num[1010]; int main() { int n; scanf("%d",&n); for(in原创 2021-03-05 11:19:54 · 76 阅读 · 0 评论 -
P1803 凌乱的yyy / 线段覆盖
传送门 思路: 先按照结束时间从小到大排序,然后选择第一个比赛,接着标记所有与第一个比赛时间重复的比赛,并选择未标记比赛中的第一个比赛,然后重复上述流程。 #include<bits/stdc++.h> using namespace std; struct node{ int sta; int end; }tim[1000010]; bool vis[1000010]; bool cmp(node a, node b) { return a.end < b.end; } int原创 2021-03-04 16:08:13 · 173 阅读 · 1 评论 -
P1094 [NOIP2007 普及组] 纪念品分组
传送门 思路: 先排序,每次都让最大的和最小的组合,若结果大于w,则继续让最小的和次大的组合,组合成功则ans++。 #include<bits/stdc++.h> using namespace std; int a[30010]; bool vis[30010]; int main() { int w,n; scanf("%d%d",&w,&n); for(int i = 1; i <= n; i++) { scanf("%d",&a[i]);原创 2021-03-04 15:46:36 · 118 阅读 · 1 评论 -
P5019 [NOIP2018 提高组] 铺设道路
传送门 题目描述 春春是一名道路工程师,负责铺设一条长度为 nn 的道路。铺设道路的主要工作是填平下陷的地表。整段道路可以看作是 nn 块首尾相连的区域,一开始,第 ii 块区域下陷的深度为 di。春春每天可以选择一段连续区间[L,R]填充这段区间中的每块区域,让其下陷深度减少 1。在选择区间时,需要保证,区间内的每块区域在填充前下陷深度均不为 0。春春希望你能帮他设计一种方案,可以在最短的时间内将整段道路的下陷深度都变为 0。 输入格式 输入文件包含两行,第一行包含一个整数 nn,表示道路的长度。 第二行原创 2021-03-02 15:58:28 · 189 阅读 · 0 评论 -
P4995 跳跳!
传送门 思路: 先对高度排序,然后再跳高的,然后跳低的,循环往复。 #include<bits/stdc++.h> using namespace std; const int mod = 1e9 + 7; #define ll long long int h[100010]; int main() { int n; scanf("%d",&n); for(int i = 1; i <= n; i++) { scan原创 2021-03-01 15:13:35 · 78 阅读 · 0 评论 -
P3817 小A的糖果
传送门 题目描述 小 A 有 n个糖果盒,第 ii 个盒中有 ai颗糖果。 小 A 每次可以从其中一盒糖果中吃掉一颗,他想知道,要让任意两个相邻的盒子中糖的个数之和都不大于 x,至少得吃掉几颗糖。 输入格式 输入的第一行是两个用空格隔开的整数,代表糖果盒的个数 n 和给定的参数 x。 第二行有 nn 个用空格隔开的整数,第 ii 个整数代表第 ii 盒糖的糖果个数 ai 。 输出格式 输出一行一个整数,代表最少要吃掉的糖果的数量。 思路: 贪心,从第二个开始遍历,每次判断当前盒子和上一个盒子的糖果数是否超出原创 2021-03-01 14:58:32 · 479 阅读 · 0 评论 -
Codeforces Global Round 13 B - Minimal Cost
传送门 B. Minimal Cost time limit per test2 seconds memory limit per test256 megabytes inputstandard input outputstandard output There is a graph of n rows and 106+2 columns, where rows are numbered from 1 to n and columns from 0 to 106+1: Let’s原创 2021-03-01 13:57:12 · 189 阅读 · 0 评论