摘要: 考虑拆位,计算每一个二进制位的贡献。 问题转化为求一个01矩阵的全0/1的子矩形个数。 考虑计算以第i行第j列为右下角的合法子矩形个数。 发现合法的左上角范围向左是单调下降的。 可以用一个单调栈来维护合法的范围。 这样做总复杂度O(n^2logn) cpp include define N 2200 阅读全文
posted @ 2019-04-26 08:05 Creed-qwq 阅读(174) 评论(0) 推荐(0) 编辑
摘要: 感觉比ZJOI的麻将要休闲很多啊。 这个题就是一个最优化问题,没有面子的特殊牌型可以直接用复杂度较低的贪心判掉。 有面子的话就是一个经典dp。(曾经还在ZJOI写过这个毒瘤东西 大概就是存一下对子,面子,杠子的个数,再记一下上两个位置剩余的牌的个数,转移非常简单。 写起来挺爽的。 cpp inclu 阅读全文
posted @ 2019-04-26 06:34 Creed-qwq 阅读(400) 评论(0) 推荐(0) 编辑