$C_n^0=1$
$C_n^0=1$
$C_n^0=1$
我怎么又双叒叕犯这种错误了啊
(咳檀)
T1 WA0,大神题,不会做!
T2 就是要找一个最长区间,满足左端点是区间最小值,右端点是区间最大值。
做法一(仅用于QJ本题100%的随机数据):
单调栈预处理每个点可以成为以左最长多长区间的最大值L,以右多长区间的最小值R
则问题变成找到两个位置$i,j(i<j)$,满足$R[i]>=j L[j]<=i$,那么枚举$i$,分块查满足条件的最大$j$
考试的时候我在心里默念:根号牛逼,根号牛逼!一定要骗到分啊!
做法二(大神做法):
考虑维护一个单调递减的单调栈,那么新加入一个元素时,它可以作为 从此处到单调栈里第一个大于它的位置中的最大值
怎么快速找到这个区间的最小值呢,把 此处到当前栈顶区间的答案 存储起来,只要在弹栈的时候不断继承弹出区间的答案即可
由于是区间最小值,继承条件是新弹出的区间最小值小于当前的最小值。
T3 回滚莫队
考试的时候我在心里默念:根号牛逼,根号牛逼!一定要骗到分啊!
隐隐约约感觉做过(其实就是原题我都没看出来是permu..)
我以前还总结过?