摘要:
第一种 int get_minstring(char s[]) { int n =strlen(s); int i = 0, j = 1, k; while (i < n&&j < n) { for (k = 0; k < n&&s[(j + k) % n] == s[(i + k) % n]; k 阅读全文
posted @ 2019-02-12 23:28
TLE自动机
阅读(230)
评论(0)
推荐(0)
摘要:
单调队列有两个性质 队列中的元素其对应在原来的列表中的顺序必须是单调递增的。 队列中元素的大小必须是单调递*(增/减/甚至是自定义也可以) 单调队列与普通队列不一样的地方就在于单调队列既可以从队首出队,也可以从队尾出队。 就拿样例来谈谈,设以最小的为标准。 下文中我们用q来表示单调队列,p来表示其所 阅读全文
posted @ 2019-02-12 22:10
TLE自动机
阅读(194)
评论(0)
推荐(0)
摘要:
P1823 [COI2007] Patrik 音乐会的等待 题解:维护一个单调不递增的栈 首先说明一下:由于一个人左边可以看到一些人,右边可以看到一些人,可以我们仅从一边考虑,对于一个人,我们考虑它的左边能看到多少个。两边都考虑会导致重复计算。 tot是当前栈元素的个数 对于新加入单调栈的一个元素, 阅读全文
posted @ 2019-02-12 13:55
TLE自动机
阅读(345)
评论(0)
推荐(0)
摘要:
版本1 这种适用于答案落在左半区间,一般适用于求解最小化最大值 当区间[l, r]的更新操作是r = mid; l = mid + 1;时,计算mid时不需要加1。C++ 代码模板: 版本2 这种适用于答案落在右半区间,一般适用于求解最大化最小值 当区间[l, r]的更新操作是r = mid - 1 阅读全文
posted @ 2019-02-12 11:02
TLE自动机
阅读(503)
评论(0)
推荐(0)

浙公网安备 33010602011771号