CodeForces - 965D Single-use Stones】的更多相关文章

Codeforces 965 D. Single-use Stones 题目大意: 有一条河宽度为w,河上有一些石头,给出一组数(编号1~w-1),其中a[i]代表与河一岸距离为i的石头数量.每只青蛙的跳跃距离为l(l<w),故要踩着石头到河的彼岸,且被踩过的石头将消失,问这条河最多可以让多少只青蛙过. 思路: 乍看之下感觉很复杂,思考是不是需要用DP来做.赛后看题解,其实这是一道思维题,问题的转化比较巧妙. 可以这样思考:任选一个i,计算其之前的源点[i-l+1 ~ i]的石头数总和,即为可以…
https://codeforces.com/contest/965/problem/D 太神仙了...比E难啊.. 首先呢,根据题意,可以很容易的建出一个最大流模型 就是每个位置建一条边,容量限制为该位置石头数,向所有它能直接跳到的位置的边的起点连边(容量无限) (当然起点和对岸也要分别建一条边,容量无限,并按一样的规则与其他的地方间连边) 那么答案就是从起点到对岸的最大流 显然不能直接跑... 而最大流=最小割,显然如果是最小割,那么不能包括任何容量无限的边,那么只能选由位置产生的边 经过观…
题面在这里! 如果你强行把问题建模,可以发现这是一个裸的增广路,又因为这是区间连边,所以跑一个 点数O(N)边数O(N log N)的线段树优化建边的网络流即可,不知道能不能过23333 但其实这个问题非常简单,因为在每个位置跳的能力都是一样的,所以完全可以不用 在每个位置跳的能力不同依然可以做的网络流. 可以发现答案的上界就是所有长度为l的区间内的a[]的和的最小值,为什么呢? 考虑任意一个长度为 l 的区间,每个青蛙都要至少跳到这里面一次,只有每个青蛙都恰好只跳到这里面一次答案才是 这个区间…
Codeforces 1110 E 题意:给定两个数组,从第一个数组开始,每次可以挑选一个数,把它变化成左右两数之和减去原来的数,问是否可以将第一个数组转化成第二个. 思路: 结论:两个数组可以互相转化的充要条件是它们差分后的数组排序后相同并且它们第一个数相同. 证明: 先证明一个引理. 引理:两个数组可以互相转化的必要条件是它们都能转化成同一个数组. 证明:假设A转化成B,C也转化成B,由于操作可逆,于是可以从A转化成B再转化成C.\(\square\) 证明原结论的充分性. 看某一次操作.…
题目链接:http://codeforces.com/problemset/problem/768/E NIM游戏改版:对于任意一堆,拿掉某个次数最多只能一次. 对于一堆石头数量为$X$.找到一个最小的$Z$使得${ (\sum_{i=1}^{Z}i)\leq x}$,我们把这一堆数量为X的石头,看作Z个数目分别为${1...n}$的石头堆. 那么一次拿一定量的石头,是不是相当于拿走了${{1,2,3....,Z}}$中的任意多堆石头? 当然如果拿的石头数目$P$超过了${\sum _{i=1}…
题意: 在经典Nim博弈的基础上增加了新的限制:如果从这堆石子中移走\(x\)个石子,那么之后就不能再从这堆移走\(x\)个. 分析: 因为之前的操作会对后面的转移有影响,所以在保存状态时还要记录哪些数量的石子可以移走. \(d(i,S)\)表示现在有\(i\)个石子,\(S\)中\(1\)的位置表示可以移走对应数量的石子,打表求出\(SG\)函数值. 打表代码: #include <cstdio> #include <cstring> bool vis[100]; int mex…
题意(Codeforces 965D) $w$表示河的宽度,$l$表示青蛙所能跳的最远的距离,第二行的$w-1$个元素表示离河岸为$i$的地方有$a[i]$个石头,一个石头被踩两次,问最多有多少只青蛙可以跳到河对岸. 分析 我是激情看题解的,很惭愧.因为自己的算法喜提TLE了w 我参考的题解在这儿.官方题解用了二分的思想. 这个算法是怎么贪心的呢?就在 while(p<i && frog[p]+frog[i]<=a[i]) 这一句.当第$i$处已经满了的时候,我们就不考虑$[p…
Codeforces Round #504 (rated, Div. 1 + Div. 2, based on VK Cup 2018 Final) A. Single Wildcard Pattern Matching 题意就是匹配字符的题目,打比赛的时候没有看到只有一个" * ",然后就写挫了,被hack了,被hack的点就是判一下只有一个" * ". 代码: //A #include<iostream> #include<cstdio>…
E. Game of Stones   Sam has been teaching Jon the Game of Stones to sharpen his mind and help him devise a strategy to fight the white walkers. The rules of this game are quite simple: The game starts with n piles of stones indexed from 1 to n. The i…
Kuriyama Mirai has killed many monsters and got many (namely n) stones. She numbers the stones from 1 to n. The cost of the i-th stone is vi. Kuriyama Mirai wants to know something about these stones so she will ask you two kinds of questions: She wi…