大水题(2022.6.18)
关于一个半小时写完懒得对拍于是没有拿满这件事
话说这么简单的题还写炸的人就是屑
Tips : 数据一定要记得检查long long和是否没mod超范围啊!!!
YY的矩阵(二维st表)
题目
YY 有一个大矩阵(N*M), 矩阵的每个格子里都有一个整数权值 W[i,j] (1<=i<=M,1<=j<=N)
对于这个矩阵YY 会有P 次询问,每次询问这个大矩阵的一个子矩阵内的最大值。
输入
第一行两个整数N 和M。 接下来N 行,每行M 个整数 然后,一行是整数P;
接下来P 行,每行4 个整数r1, c1, r2, c2(分别表示子矩阵的左上角坐标和右下角坐标)
输出
共P 行,每行一个整数,表示相应的最大值。
Input
4 4
4 4 10 7
2 13 9 11
5 7 8 20
13 20 8 2
4
1 1 4 4
1 1 3 3
1 3 3 4
1 1 1 1
Output
20
13
20
4
数据范围:
60%的数据:N×M×P<10^8
100%的数据:1 <= N, M <= 300;1 <= P <= 1,000,000;1 <= r1 <= r2 <= N, 1 <= c1 <= c2 <= M,1<=W[i][j]<=10000.
解思
看到数据范围询问 1e6 就想到 的询问即二维ST表,但是据说因为开了的时限于是的暴力也能乱爬...
WYT 的刷子(单调栈+贪心)
题目
WYT 有一把巨大的刷子,刷子的宽度为M 米,现在WYT 要使用这把大刷子去粉刷有 N 列的栅栏(每列宽度都为 1 米;每列的高度单位也为米,由输入数据给出)。
使用刷子的规则是:
1、 与地面垂直,从栅栏的底部向上刷
2、 每次刷的宽度为M 米(当剩余栅栏宽度不够M 米的话,刷子也可以使用,具体看样例2)
3、 对于连续的M 列栅栏,刷子从底向上,刷到的高度只能到这M 列栅栏的最低高度。
WYT 请你回答两个问题:
1、最少有多少个单位面积不能刷到(单位面积为1 平米)
2、在满足第一问的条件下,最少刷几次?
输入
共两行:
第一行两个整数N 和M。
第二行共N 个整数,表示N 列栅栏的高度
输出
一行,两个整数,分别为最少剩余的单位面积数量和最少刷的次数。
Input1:
5 3
5 3 4 4 5
Output1:
3
2
Input2:
10 3
3 3 3 3 3 3 3 3 3 3
Output2:
0
4
Input3:
7 4
1 2 3 4 3 2 1
Output3:
4
4
数据范围:
30%的数据:N<=10^3
50%的数据:N<=10^5
100%的数据:1<=N<=10^6, 1<=M<=10^6,N>=M, 每列栅栏的高度<=10^6.
解思
做法:单调栈维护当前高度之前的高度,栈顶到栈底递减,可找到左右最后一个大于等于当前高度的点(左右分开扫),得到最长的连续长度,而后分别从左向右和从右向左扫出点可达到向左右拓展至少m个的最高高度,对于每一段连续的相同高度,只需贪心求出答案即可。
做法:当扫到当前长度为m的块时,利用线段树对区间赋值(赋当前块中最小的高度),线段树中每个点值取max,可得出当前点的最高高度,而后步骤同上。
2017 种树(树状数组)
题目
2017 共有N 棵树从0 到N-1 标号。现要把这些树种在一条直线上,第i 棵树的种植位置X[i]如下确定:
X[0] = X[0] MOD L;
X[i] = (X[i-1]*A+B) MOD L。
每棵树种植的费用,是所有标号比它小的树与它的距离之和。2017 请你计算各棵树的费用之积,最后对1000000007 取余。
输入:
共五行:
第一行为N
第二行为L
第三行为X[0]
第四行为A
第五行为B
输出:
总费用
Input1:
5
10
3
1
1
Output1:
180
样例解释:
5 棵树的位置分别为: 3, 4, 5, 6, 7.
费用分别为: 1, 3, 6, 10. (从第一棵树开始)
总费用为: 1 × 3 × 6 × 10 = 180.
数据范围:
10%的数据:N<=10;
60%的数据:N<=5×10^5;
100%的数据:N,L<=200000; X[0],A,B<=10^9.
解思
开两个数组,一个统计在i之前有多少棵树,记为A,一个统计在i之前所有树的下标和,记为B,第i棵树左边答案即为 i的下标*A-B ,右边同理。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】