[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)
单调队列
pla文件怎么看,pla文件用什么打开?
pl1文件怎么看,pl1文件用什么打开?
pl文件怎么看,pl文件用什么打开?
pl0文件怎么看,pl0文件用什么打开?
pkt文件怎么看,pkt文件用什么打开?
pkm文件怎么看,pkm文件用什么打开?
pks文件怎么看,pks文件用什么打开?
pka文件怎么看,pka文件用什么打开?
pkh文件怎么看,pkh文件用什么打开?
pkg文件怎么看,pkg文件用什么打开?