码迷,mamicode.com
首页 >  
搜索关键字:贪心    ( 7634个结果
Math Show CodeForces - 846B
原题链接 考察:贪心+枚举 WA了n次,正解思维其实和A题一样,我想出了A题却没反应过本题,果然还是菜. 错误思路: 分两种方式,一个是从时间少做到时间多的,另一个是横向完成一组一组的子任务. 错误原因: 很明显没有枚举所有方式. 正确思路: 枚举做0~n组任务后,再从小到大做任务的耗费时间. ## ...
分类:其他好文   时间:2021-06-10 18:19:15    阅读次数:0
【题解】[JOISC2020] 星座 3
近期做的最好的贪心题之一。 翻了一下官方题解貌似是转化为树上问题然后线段树维护,可能出题人想少了没有想到贪心写法。懂日语的小伙伴可以研究一下Solution 。 第一步不难想到对于所有的星星按 \(Y\) 从小到大排序,这样限制条件转化为选了一颗星星后,接下来不能选择一个区间内的星星。 那么对于当前 ...
分类:其他好文   时间:2021-06-10 17:59:31    阅读次数:0
数据结构-Dijkstra-最短路长度以及最短路节点
Dijkstra算法采用的是一种贪心的策略,声明一个数组dist来保存源点到各个顶点的最短距离和一个保存已经找到了最短路径的顶点的集合:T,初始时,原点 s 的路径权重被赋为 0 (dist[s] = 0)。若对于顶点 s 存在能直接到达的边(s,m),则把dist[m]设为w(s, m),同时把所 ...
分类:其他好文   时间:2021-06-10 17:55:03    阅读次数:0
贪心算法
本算法采用广播电台覆盖区域来做演示,设置五个电台集合,存放可以覆盖的区域,再设置一个总集合,存放所有的区域,然后只要未全覆盖,则每次都选择能包括最多未覆盖区域的电台,这就是一个最优解。代码如下: public static void main(String[] args) { HashMap<Str ...
分类:编程语言   时间:2021-06-08 23:28:46    阅读次数:0
T181046 函数 题解
这道题放在了 T4 的位置,以为很难,然后结束之后机房某现场 AC 的神仙告诉我这就是道简单贪心…… 我一开始还不信,结果最后发现真的是贪心。 首先先将所有 \(x_i\) 初始化为 1,计算出这一块的 \(\sum F_i(x_i)\)。 然后对于每一个 \(x_i\),定义 \(d_i=F_i( ...
分类:其他好文   时间:2021-06-07 21:06:51    阅读次数:0
UVa 10382 Watering Grass (贪心 区间覆盖)
利用几何关系转化以后,变成经典的区间覆盖问题 #include<bits/stdc++.h> using namespace std; typedef long long ll; const int maxn = 10010; const double eps = 1e-11; int n, L, ...
分类:其他好文   时间:2021-06-03 17:39:32    阅读次数:0
算法入门——区间贪心
区间贪心 一、区间不相交问题 问题描述:给出N个开区间(x,y),要求从这些开区间中选择尽可能多的开区间,使得这些开区间两两之间没有交集 例如:对于(1,3)、(2,4)、(3,5)、(6,7)来说,可以选出最多的三个区间(1,3)、(3,5)、(6,7) 这就是区间选择问题,所以在求解时,应该尽可 ...
分类:编程语言   时间:2021-06-02 18:06:20    阅读次数:0
[ARC120E] 1D Party
前言 能 \(\tt dp\) 就不要乱猜结论贪心。 题目 AtCoder 题目大意: 给出 \(n\) 个人的数轴上的坐标 \(a_i\),保证为偶数,每个人的速度至多为 \(1\),需要使得每一个 \(i\in[1,n-1]\),第 \(i\) 个人与第 \(i+1\) 个人相遇过,求最小时间。 ...
分类:其他好文   时间:2021-06-02 15:24:29    阅读次数:0
[cf1149D]Abandoning Roads
根据kruskal的贪心过程,先将所有$a$类边连起来,对于一个连通块内的两点,必然通过$a$边联通 考虑对于一条最短路径,必然是一段(可能为空)$a$类边+1条$b$类边,同时其合法当且仅当这些$b$类边都能被加入最小生成树中,即不会与$a$类边产生环,又即不重复经过一个连通块 状压之前经过的连通 ...
分类:其他好文   时间:2021-06-02 13:09:00    阅读次数:0
CF1509C The Sports Festival
原题链接 题意:每次加一个数,要求最小 $\sum max_ - min_, 题解:本来以为就是纯贪心,然后发现竟然是区间dp,就是先排完序,然后就加入然后取 \(min\)。 代码: #include <iostream> #include <bits/stdc++.h> using namesp ...
分类:其他好文   时间:2021-06-02 13:04:14    阅读次数:0
7634条   上一页 1 2 3 4 ... 764 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!