上一页 1 2 3 4 5 6 ··· 18 下一页
摘要: "题目链接" Solution 去掉中间一段区间 $[l,r]$ 后剩下的平均值可以表示为 : $$\frac{\sum^{n}_{i=1}{v_i} \sum^{r}_{i=l}{v_i}}{n (r l+1)}$$ 二分的答案如果要满足条件,即: $$\frac{\sum^{n}_{i=1}{v 阅读全文
posted @ 2019-07-18 20:20 Kevin_naticl 阅读(221) 评论(0) 推荐(0) 编辑
摘要: "题目链接" Solution 先直接二分答案,然后贪心判断,一旦少于答案就吃一块。 思路很简单,有一点细节。 一天内可以不吃巧克力. 注意处理最后时没吃完的全部在最后一天吃完. Code 阅读全文
posted @ 2019-07-18 20:09 Kevin_naticl 阅读(290) 评论(0) 推荐(0) 编辑
摘要: "题目链接" Solution 发现 $n$ 只有 $50$, 可以用 $floyd$ . 然后 $w[i][j][l]$ 代表 $i$ 到 $j$ 是否存在 $2^l$ 长的路. 四重循环,枚举即可.如果有则更新 $dis[i][j]$ 为 $1$ . 然后再跑 $floyd$ 即可. 不过注意枚 阅读全文
posted @ 2018-11-09 20:03 Kevin_naticl 阅读(175) 评论(0) 推荐(0) 编辑
摘要: "题目链接" Solution 动态规划. 令 $f_{i,j}$ 表示 $a$ 数组前 $i$ 个和 $b$ 数组前 $j$ 所得的最长的 LCIS . 转移很好想: $a_i!=b_j :~f_{i,j}=f_{i 1,j}$ $a_i==b_j :~f_{i,j}=max(f_{i 1,j}, 阅读全文
posted @ 2018-11-09 19:56 Kevin_naticl 阅读(231) 评论(0) 推荐(0) 编辑
摘要: "题目链接" Solution Meet in the middle. 考虑到 $2^{35}$ 枚举会超时,于是分成两半枚举(尽量平均). 然后不能 $n^2$ 去匹配,需要用到一点贪心: 将数分成 $p,q$ 两组,那么对于任意数 $p_i$ ; 它与 $q$ 数组中组成最大得到的值即为 最大的 阅读全文
posted @ 2018-10-25 20:03 Kevin_naticl 阅读(262) 评论(0) 推荐(0) 编辑
摘要: "题目链接" Solution 有点巧的莫队. 考虑到区间 $[L,R]$ 的异或和也即 $sum[L 1]~\bigoplus~sum[R]$ ,此处$sum$即为异或前缀和. 然后如何考虑异或和为 $k$ ? 我们做完前缀和后,可以发现对于$sum[i]$这个起点,异或上$k\bigoplus{ 阅读全文
posted @ 2018-10-25 16:30 Kevin_naticl 阅读(280) 评论(0) 推荐(0) 编辑
摘要: "题目链接" Solution 直接考虑单调栈处理出每一个点作为最小值的区间长度. 然后 $O(n)$ 找一遍最大值即可. 记得开 ,以及要注意 $0$ 的问题. Code cpp include define ll long long define N 2000001 define in(x) x 阅读全文
posted @ 2018-10-25 14:47 Kevin_naticl 阅读(163) 评论(0) 推荐(0) 编辑
摘要: "题目链接" Solution 贼有意思的一个题目。 可以发现阻止我们走的更远的就是那些需要反向走的路程。 然后发现当角度越接近 $180^\circ$ ,对我们最终的答案则更优。 所以先是一个背包把可以达到的角度处理一下,然后再直接算就好了。 卡精度。 Code cpp include defin 阅读全文
posted @ 2018-10-18 17:12 Kevin_naticl 阅读(217) 评论(0) 推荐(0) 编辑
摘要: "题目链接" Solution 传统的线性 $dp$ . $f[i][0]$,$f[i][1]$ 分别表示最后一次在 $i$ ,然后在 左边或者右边的最小步数. 然后就每次根据上一次左边和右边的状态转移过来. Code cpp include define N 20001 define in(x) 阅读全文
posted @ 2018-10-16 20:35 Kevin_naticl 阅读(204) 评论(0) 推荐(0) 编辑
摘要: "题目链接" Solution 状压 $dp$ . $f[i][j][k]$ 代表前 $i$ 列中 , 已经安置 $j$ 块草皮,且最后一位状态为 $k$ . 同时多记录一个每一列中的不能放的位置 $w[i]$. 然后就可以很轻松的转移了... 转移方程看代码. Code cpp include d 阅读全文
posted @ 2018-10-15 22:04 Kevin_naticl 阅读(279) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 18 下一页