有序考虑+二分条件
2020100XWH
这个作者很懒,什么都没留下…
展开
-
无限转冲,连续的力量
kotori的设备 - 洛谷 这里一个充能点问能维护n个费能点多久,由于这里充能点的转变不需要浪费任何时间,所以,能维护一堆机器工作t时的充要条件是 :能提供的电量大于等于消耗电量,这里把电量看作对象,一个机器用掉多冲的电量的时间完全可以用来充满另一个,总的电量是一定的,只要将电量在极小的时间内平分就一定能持续不用管b【i】 #include<iostream> #include<cstring> #include<vector> #include<..原创 2022-04-14 12:55:01 · 54 阅读 · 0 评论 -
转换等价处理
[NOIP2015 提高组] 跳石头 - 洛谷 最后一颗不能动的石头让我怀疑二分贪心策略的正确性,但仍是正确的,因为出现这种情况,去掉当下的石头可以解决,若不能去掉,则一定完不成,因为贪心一定是最小花费的最优情况,所以对与check仍旧等价(因为只差一个,所以既然不存在最优,这个就一定能排到最优) #include<bits/stdc++.h> using namespace std; typedef long long ll; const int inmax=40000008; c.原创 2022-04-07 16:19:32 · 75 阅读 · 0 评论 -
二分查找stl
lower_bound 返回第一个范围内大于或等于查找值的地址单位,若没查找到则返回end地址,反之通过减去首地址+首地址下标得目标地址 upper_bound返回第一个小于目标值。。。。 注意精度给的对象是谁 ll快快读模版: #include<bits/stdc++.h> using namespace std; typedef long long ll; const int inmax=40000008; char IN[inmax+5],*ipos; #defin..原创 2022-04-07 11:57:30 · 99 阅读 · 0 评论 -
倍增思路dp yyds
[NOIP2012 提高组] 开车旅行 - 洛谷 1.首先确定人及地点可以确定路径 2.所以对应多种情况访问,我们就用dp记录所有情况,因为换人和路径都可用dp处理 3.路径大采取倍增的方式,对于固定的路径长采用二进制的方式访问(log优化) 4.multiset可用于重复 元素自动排序 访问需要i++ i--(log) 5.有序存贮访问全部可以达到单向动态记录 #include<bits/stdc++.h> using namespace std; typedef long .原创 2022-02-26 12:55:01 · 63 阅读 · 0 评论 -
有序考虑制造贪心
一个问题可能你从中间无序的直接考虑会丢失些重要思路条件,如此处若从头考虑就可以想到补齐时的贪心思想 最小的最大这种考虑与二分有关 二分特征:有优劣判断方向,制造补齐目标 debug!别改觉得没问题的,浪费时间和尝试,找没考虑到的,如中间量开小了 #include<bits/stdc++.h> using namespace std; const int maxn=500000+10; int n,r1; long long k,a[maxn],c[maxn]; bool check(.原创 2021-09-03 12:28:10 · 51 阅读 · 0 评论