摘要:
Leetcode600 很简单的一道计数题 给定整数n 求不大于n的正整数中 二进制表示没有连续的1的数字个数 在dp过程中只要保证不出现连续1以及大于n的情况即可。 所以设计按位dp[i][j]表示到第i位 j=0表示第i位为0 且值等于n的情况 2为值小于n的情况 j=1表示第i位为1 且值等于 阅读全文
摘要:
A An abandoned sentiment from past 水题 B An express train to reveries 水题 C An impassioned circulation of affection 水题 D An overnight dance in discotheq 阅读全文
摘要:
A The Contest 直接粗暴贪心 略过 B The Golden Age 由于指数增长速度极快 直接用一个平衡树遍历即可。 C The Tag Game 很简单的贪心 Bob总是要前往最深的节点(在不撞到Alice的前提下) 遍历一下即可 D Two Melodies O(n^2)的dp 设 阅读全文
摘要:
A Sagheer and Crossroads 水题略过(然而被Hack了 以后要更加谨慎) B Sagheer, the Hausmeister 很简单的DP 由于不关掉本层的灯不能上楼,问题就好办了。 dp[i][0]表示从顶层到第i层全关完且从左边出发的minicost dp[i][1]表示 阅读全文
摘要:
Leetcode517 很有趣的一道题 由于每一步可以任选某些数字对它们进行转移,所以实际上是在求最优解中的最复杂转移数。 那么我们考虑,到底哪一个位置要经过的流量最大呢? 枚举每个位置,考虑它左边的整体需求和右边的整体需求,如果两边都需要流入,则流量相加; 如果一边需要流入,一边需要流出,则取绝对 阅读全文
摘要:
codeforces802 A-O Helvetic Coding Contest 2017 online mirror A Heidi and Library (easy) 水题 同B B Heidi and Library (medium) 经典的内存管理OPT算法 不过基本没有实际应用价值,因 阅读全文
摘要:
A. Vladik and Courtesy 水题略过 B. Vladik and Complicated Book 给定一个序列, 询问子区间【l,r】的第k小数是不是原位置的数。 显然可以用主席树维护,不过这道题数据放水了,用暴力一点的方法应该也能过。 C. Vladik and Memorab 阅读全文
摘要:
POJ1389 给定n个整数点矩形,求面积并。 显然ans必然是整数。 记录若干个事件,每个矩形的左边的竖边记为开始,右边的竖边记为结束。 进行坐标离散化后用线段树维护每个竖的区间, 就可以快速积分了。 阅读全文
摘要:
POJ2127 给定两个 整数序列,求LCIS(最长公共上升子序列) dp[i][j]表示A的A[1.....i]与B[1.....j]的以B[j]为结尾的LCIS。 转移方程很简单 当A[i]!=B[j] dp[i][j]=dp[i-1][j] else dp[i][j]=max(dp[i][k] 阅读全文
摘要:
Leetcode315 题意很简单,给定一个序列,求每一个数的右边有多少小于它的数。 O(n^2)的算法是显而易见的。 用普通的线段树可以优化到O(nlogn) 我们可以直接套用主席树的模板。 主席树的功能是什么呢? 其实就是一句话。 原序列a的子序列a[l,r]在a排序后的序列b的子序列[L,R] 阅读全文