随笔分类 -  其他——思路

摘要:题目描述 若有两个红格相邻 第一问的答案为0,所有位置上的棋子都可以通过在这两个格子上放棋子得到 第二设f[i]表示想让第i个格子上有棋子需要放的棋子数 若没有,第一问答案为偶数格子上白格的个数,第二问为偶数格子上红格的个数 阅读全文
posted @ 2018-10-17 17:43 LeTri 阅读(180) 评论(0) 推荐(0)
摘要:题目描述 一个只有两个物品的背包问题,但是范围都是1e9,需要考虑根号或者log的复杂度。 如果这两个物品中的某一个花费超过了根号C,那么我们可以直接枚举这件物品的数量,另一件物品的数量可以计算得出。 若没有 假设 v1/c1>v2/c2 也就是v1*c2>v2*c1 假设第一件物品有c2件,也就是 阅读全文
posted @ 2018-07-01 14:56 LeTri 阅读(328) 评论(3) 推荐(0)
摘要:题目描述 分别枚举两个矩阵?那样n^6太要命了。 可以枚举两个矩形的交点 将交点看成原点,可以将整个区域分成四个象限,1与3对应,2与4对应 再枚举相对应的象限计算可以获得的利益,用hash判重 可枚举不同的象限时还要把hash清零,n^2次的memset就超时了。。。 那怎么继续优化呢? 可以用一 阅读全文
posted @ 2018-03-30 11:04 LeTri 阅读(203) 评论(0) 推荐(0)
摘要:题目描述 /* 求区间i(1<=i<=n)到j(i<=j<=n)的平均值大于k的区间个数 可以先对每个数减去k,再对新得到的数组求前缀和 如果sum[j]-sum[i-1]>=0,说明i到j区间的数的平均值大于等于k 移向得sum[j]>=sum[i-1],因为j>=i,所以j>i-1 也就是对su 阅读全文
posted @ 2018-03-04 21:34 LeTri 阅读(150) 评论(0) 推荐(0)