【Luogu1182】数列分段Section II(二分)
problem一个长度为N的正整数数列A[i]将其分成M段,并要求每段连续求每段和最大值(M段各自的和中最大的那个)最小(某种方案下最小)。solution二分每段和的最大值mid。如果存在一种划分方案使得每段和为mid…
problem一个长度为N的正整数数列A[i]将其分成M段,并要求每段连续求每段和最大值(M段各自的和中最大的那个)最小(某种方案下最小)。solution二分每段和的最大值mid。如果存在一种划分方案使得每段和为mid…
problem给定一张图,求其最小生成树中的边数和权值最大的边solution裸的Kruskalcodes#include#includeusingnamespacestd;constintmaxn=10010;stru…
problemn个建筑需要抢修第i个建筑需要T1时间抢修,必须在T2时间之前抢修完毕求最多能抢修多少建筑solution先按照t2从小到大排列(对于每一个建筑,我们肯定等它快到限制的时候再修复它。)对于一个建筑,如果能修…
problem猜数字游戏,求最优情况下猜的次数solution。。。。都被我猜中了啊哈哈哈哈。。。。。。。codes#includeusingnamespacestd;intn;intmain(){scanf("%d",…
problem给出正整数n和k计算j(n,k)=kmod1+kmod2+kmod3+…+kmodn的值solutionki,贡献为∑(k-⌊k/i⌋*i),⌊k/i⌋相等的数是连续的一段,此时这段连续的数对答案的贡献成等…
problem把一个数n进行拆分拆分出来大于一的数两两不等,使得拆出来的数可以组成[1,n]间的所有数求最少拆成多少个数。n>n;while(n)n>>=1,ans++;cout
problem给你一个n个数的数列找出其中出现超过n/2次的数solution1、既然众数出现了超过了n/2次,那么任意删除序列中的两个不同的数,众数在新序列中出现的次数也一定会超过n/2次。2、所以我们就维护一个计数。…
problem给出一个数n求“1的约数个数”+“2的约数个数”+……+“n的约数个数”。solution不难发现:约数1出现的个数就是n/1(有n个数都是1的倍数),约数2出现的个数就是n/2。所以其实我们直接把n/i累…
problemsolution//如果n为奇数,走满所有格须移动偶数次,n为偶数的话奇数次,然后少到一格少移动两次,奇偶性不改变,所以即可判断胜负。codes#includeusingnamespacestd;intma…