分类: 算法笔记

算法的介绍与相关题目的解析。
题解将不会在首页显示。持续更新中~

10 篇文章

【题解】简易数字变换(线段树)
[collapse title="题目"] 给定m个整数的初始值A1、A2、...、Am,有以下两种类型操作: 1、把某一下标范围内的数字都加上一个给定的值; 2、在某一下标范围内计算数字的和 这两种类型的操作一共会执行q次。 输入只有一组案例。 两个正整数m和q,表示数字的个数和操作的次数。(m<=100000, q<=100000)…
【题解】区域规划
[collapse title="描述"] 在一个区域中有一排建筑,每个建筑都有一个影响力 x,我们规定,这个区域的综合实力等于该区域内影响力最高的建筑。有一天上级传达下来命令,需要把这个区域一分为二,同时使两个区域的综合实力之差尽可能大,请问这个差值可以达到多少。 第一行是一个正整数 n 代表建筑物的数量。(2 <= n <= 4e5…
【题解】最大平均数(二分区间求最大子段和)
[collapse title="题目描述"] 已知n个整数A1、A2、...、An,从中找出一个连续区间Ai到Aj,使得该区间的数字个数不小于m,且区间内数字的平均值最大。(在计算平均值时,如果不为整数,那么以该值向下取整作为平均值) 求这个最大区间平均值。 输入多组案例。一个正整数T,表示案例的数量。(T<=100) 每组案例中,先是两个…
对极值问题的探索
1.三分法 在对区间做二分查找之前,我们要保证这个区间是有序的,二分法适用于单调函数。对于非单调函数,二分法就不适用了,需要使用一种新的方法——三分法。 三分法首先把待求区间分成三份 mid1=L+(R-L)/3 mid2=R-(R-L)/3 比较f(mid1)和f(mid2)谁更靠近极值,若f(mid1)更靠近极值,则将右区间改为mid2,若f(…
【题解】Hello Winter Vacation Round #7
前排感谢@范总、@黄总两位大佬的支持。 1.积木-5 给你 n 堆积木,第 i 堆积木有 a[i] 个,现在你需要处理以下两种操作: 1 X Y :给第X堆的积木添加 Y 个,即a[X] += Y。 2 L R :求出区间[L,R]内积木的最大值。 [hidden]RMQ(Range Minimum/Maximum Query)模板题,使用线段树/…
【题解】选大佬
描述有m个同学围成一圈,编号分别是1、2、…、m,其中编号1的是蔡小佬。从蔡小佬开始报数,他可以任意选择一个正整数p报数,然后编号2的同学应该报的数字是p+1,编号3的同学应该报p+2,以此类推,循环报数。规定所有报的数字是7的倍数或者含有数字7的同学会被淘汰出局,已经被淘汰的同学不再参与报数。这样总会在某个时刻,还留在场上的同学会仅剩下一个,这个…
【题解】平方和
描述验证某个正整数m是否可以表示成若干个互不相同正整数的平方和输入一个正整数n,表示有n组案例。每组案例由一个正整数m组成。(m<=1000000)输出针对每组案例,如果m能表示成多个(可以是一个,也可以不止一个)互不相同整数的平方和,那么输出Yes,否则输出No。每组案例输出完都要换行。样例输入3141516样例输出YesNoYesHINT…