摘要: "洛谷" 这题就是区间开根号,区间求和。我们可以分块做。 我们记布尔数组vis[i]表示第i块中元素是否全部为1。 因为显然当一个块中元素全部为1时,并不需要对它进行根号操作。 我们每个块暴力开根号,因为数字最大$2^{31}$,所以最多每个数字开几次根号,所以时间复杂度很低。 记录sum[i]表示 阅读全文
posted @ 2018-09-02 21:44 fuyan0101 阅读(342) 评论(0) 推荐(4) 编辑
摘要: "洛谷" 题目就是让我们在DAG中找到一些点,覆盖所有点。 因为是DAG,可以想到tarjan缩一下点。假设我们需要找x个点,那么答案就是(n x)/n。 我们怎么选点呢? 敏锐的我们很快就能想到,直接选出所有入度为0的点。 但是,当我们发现一个入度为0的点,但是其中元素为1,而它的出边所到的点的入 阅读全文
posted @ 2018-09-02 21:33 fuyan0101 阅读(179) 评论(0) 推荐(4) 编辑
摘要: "洛谷" 这大概是我见过最水的紫题吧~ 洛谷标签赞一个! 题意:你有一年时间,把10w元存银行变成更多钱,在特定时间区间内,你会有一些利息,不过不可中途退出。 直接dp:st[i]表示区间左端点,ed[i]表示右端点,a[i]表示利率。 f[i]表示第i天的最大值。直接循环每天和每个套餐转移即可。 阅读全文
posted @ 2018-09-02 21:20 fuyan0101 阅读(384) 评论(2) 推荐(4) 编辑
摘要: "洛谷1" 或 "洛谷2" ,它们是一样的题目,手动 "滑稽" ~ 这一题我是想不出来, 但是我想吐槽一下坐我左边的 "大佬" 。 大佬做题的时候,只是想了几分钟,拍了拍大腿,干脆的道:“这不是很显然吗!” 然后灵动地轻击键盘,不时抚弄头发,光速切紫题。 AC后笑眯眯地对我说, 你要是想的出来,我给 阅读全文
posted @ 2018-09-02 20:23 fuyan0101 阅读(397) 评论(3) 推荐(4) 编辑
摘要: "洛谷" 一看就知道是一个数学题。嘿嘿~ 讲讲各种分的做法吧。 30分做法:不知道,这大概是这题的难点吧! 60分做法: 一是直接暴力,看下代码吧~ cpp include using namespace std; typedef int _int; define int long long int 阅读全文
posted @ 2018-09-02 19:55 fuyan0101 阅读(140) 评论(0) 推荐(4) 编辑