到百度首页
摘要: 题目链接:http://poj.org/problem?id=2505 题目大意: 两个人轮流玩游戏,Stan先手,数字 p从1开始,Stan乘以一个2-9的数,然后Ollie再乘以一个2-9的数,直到谁先将p乘到p>=n时那个人就赢了,而且轮到某人时,某人必须乘以2-9的一个数。 解题思路: 这是 阅读全文
posted @ 2018-02-18 16:00 justin_cao 阅读(294) 评论(0) 推荐(0) 编辑
摘要: 花了一个星期,总算把这一道该死的毒瘤题做完了。 这道题有很多种解法,我是用优先队列+主席树。 首先每一个区间的和,可以表示为两个前缀和之差。 我们显然可以知道,每一次找到的那个最大值必然在以一个点为最后一个点的区间之内。 所以我们可以把每一个点为最后一个点的最大值的区间求出来,先打入队列。 然后每一 阅读全文
posted @ 2018-02-05 21:57 justin_cao 阅读(216) 评论(1) 推荐(0) 编辑
摘要: 第一道习题博客!! 这一道题比较简单。 题目就是输入一个数列。 就是每插入一个,找到前面插入过的与之差最小的值,将他们的差值加入答案。 这里可以想到平衡树。 每一次输入,加进treap中,然后找它的前驱和后继,比较他们的差值大小,小的加入答案。 如果treap不懂的话,可以看我的前一篇博客:http 阅读全文
posted @ 2018-01-11 20:01 justin_cao 阅读(272) 评论(0) 推荐(0) 编辑
摘要: 这次我们来讲一讲Treap(splay以后再更) 平衡树是一种排序二叉树(或二叉搜索树),所以排序二叉树可以迅速地判断两个值的大小,当然操作肯定不止那么多(不然我们还学什么)。 而平衡树在排序二叉树的基础上主要是增加了一个优化:就是高度较为平衡,并可以动态平衡。 而今天要讲的treap就是一种动态平 阅读全文
posted @ 2018-01-11 19:43 justin_cao 阅读(243) 评论(0) 推荐(0) 编辑
摘要: 老规矩,讲算法前,先说一道小问题吧 给你一个长串和短串,求短串在长串中出现的次数和位置。 设长串长度为len1,短串长度为len2。 如果len1*len2<=108,那就很简单了,直接暴力枚举以每个字符为开始的字符串是否匹配即可,复杂度为O(len1*len2);(是不是感觉太大了?) 如果将数据 阅读全文
posted @ 2018-01-02 17:19 justin_cao 阅读(235) 评论(0) 推荐(1) 编辑
摘要: 现在正式开始第一篇博客。 先看一个式子: x+y+z=5 2*x+3*y+z=11 x+4*y+z=11 如果问人怎么解,人家肯定会告诉你,消元啦~ 实际上消元有两种:加减消元和带入消元 在电脑上编程实现的话,加减消元会简单一些。 这样就有了我们的高斯消元法。 高斯消元就是有多个加减消元构成的,能够 阅读全文
posted @ 2017-12-31 23:11 justin_cao 阅读(611) 评论(0) 推荐(1) 编辑
摘要: 刚刚才把博客开好。 比较兴奋,所以开始写自己的第一篇博客。 由于我是一个OIer,所以我希望通过博客的方式来与大家交流,同时分享一下自己稍微有一点点用的小经验。 主要还是督促自己,不能放弃。 阅读全文
posted @ 2017-12-31 22:13 justin_cao 阅读(155) 评论(0) 推荐(0) 编辑