[luoguP2216] [HAOI2007]理想的正方形(二维单调队列)
传送门
1.先弄个单调队列求出每一行的区间为n的最大值最小值。
2.然后再搞个单调队列求1所求出的结果的区间为n的最大值最小值
3.最后扫一遍就行
懒得画图,自己体会吧。
——代码
1 #include <cstdio> 2 #include <iostream> 3 4 using namespace std; 5 6 const int MAXN = 1001; 7 int a, b, n, h, t; 8 long long c[MAXN][MAXN], q[MAXN], max1[MAXN][MAXN], min1[MAXN][MAXN], max2[MAXN][MAXN], min2[MAXN][MAXN], ans = 1000000001; 9 10 inline void work1(int k) 11 21 h = 1; t = 0; 22 for(i = 1; i <= b; i++) 23 29 } 30 31 inline void work2(int k) 32 42 h = 1; t = 0; 43 for(i = 1; i <= a; i++) 44 50 } 51 52 int main() 53View Code
上一篇:基本数论算法
下一篇:[luoguP1027] Car的旅行路线(Floyd)
单调队列
spc文件怎么看,spc文件用什么打开?
0文件怎么看,0文件用什么打开?
sparseimage文件怎么看,sparseimage文件用什么打开?
sp文件怎么看,sp文件用什么打开?
dv文件怎么看,dv文件用什么打开?
soundpack文件怎么看,soundpack文件用什么打开?
dus文件怎么看,dus文件用什么打开?
dtw文件怎么看,dtw文件用什么打开?
spdf文件怎么看,spdf文件用什么打开?
0文件怎么看,0文件用什么打开?