摘要: 1.无论一个字母是大写还是小写,(?&31)就是它在字母表中的位置。这种简便的方法可以用于 有关篡位 的题,例如:Vigenère 密码。 2.十进制转R进制 ,R 为负数,还是按照常规的操作,要注意一点: 当余数<0,则商+1,余数+|R| 代码: 3.原来一直以为long long int 比 阅读全文
posted @ 2018-10-17 21:41 zxza695 阅读(211) 评论(0) 推荐(0) 编辑
摘要: 写在前面的话: 我的字符串还是太弱了,记录一下string类型实用的一些函数用法。 (1)find() 定义string 类型的 s和t 1.s.find(t):从s中找t,返回找到的第一个t的第一个字母的下标.没有找到返回-1. 2.s.find(t,p):从下标p开始,从s中查找字符串t,返回值 阅读全文
posted @ 2018-10-06 20:09 zxza695 阅读(662) 评论(0) 推荐(0) 编辑
摘要: 这个随笔主要是记录一下做题过程中的易错点。 1.memset只能初始化0或者-1. 2.数组大小还是得准确计算,不要为了大小为1的差距而爆0了。 3.lowbit(0)=0. 4.gcd(F[n],F[m])=F[gcd(n,m)],不等价于gcd(F[n]%mod,F[M]%mod)。 5.关于t 阅读全文
posted @ 2018-09-30 10:23 zxza695 阅读(231) 评论(0) 推荐(0) 编辑
摘要: 题目链接:https://www.luogu.org/problemnew/show/P1941 思路: 预处理x=1的情况。 先做完全背包再做0/1背包。 时间复杂度O(n*m),空间复杂度O(n*m). 其实空间复杂度可以用滚动数组优化成O(m) 原理同0/1背包和完全背包的优化。 具体可以看背 阅读全文
posted @ 2018-11-04 18:42 zxza695 阅读(198) 评论(0) 推荐(0) 编辑
摘要: 题目链接:https://www.luogu.org/problemnew/show/P2014 题目描述 在大学里每个学生,为了达到一定的学分,必须从很多课程里选择一些课程来学习,在课程里有些课程必须在某些课程之前学习,如高等数学总是在其它课程之前学习。现在有N门功课,每门课有个学分,每门课有一门 阅读全文
posted @ 2018-11-04 13:02 zxza695 阅读(159) 评论(0) 推荐(0) 编辑
摘要: 埃及分数题目链接 这道题比较经典。 算法:迭代加深+IDA* 优化: 1.迭代加深 2.确定从小到大的搜索顺序 3.确定搜索上下界 (1)以i为分母的数字不能大于a/b. (2)如果后面的数字都以i为分母仍然<=a/b,退出。 细节: (1)在通分过程中会爆int。 代码: 阅读全文
posted @ 2018-11-02 20:44 zxza695 阅读(582) 评论(0) 推荐(0) 编辑
摘要: 题目链接 思路: 大模拟,爆搜30分。 加一个贪心就能过。 单张和对子不用打,留到最后把散牌都打掉,无论怎么都会出现只剩单张和对子的情况,这种情况只能打散牌。 代码: 阅读全文
posted @ 2018-11-02 16:38 zxza695 阅读(278) 评论(0) 推荐(0) 编辑
摘要: 题目链接 题目描述: 有两个仅包含小写英文字母的字符串 AA 和 BB。 现在要从字符串 AA 中取出 kk 个互不重叠的非空子串,然后把这 kk个子串按照其在字符串 AA 中出现的顺序依次连接起来得到一个新的字符串。请问有多少种方案可以使得这个新串与字符串 BB 相等? 注意:子串取出的位置不同也 阅读全文
posted @ 2018-11-01 19:02 zxza695 阅读(282) 评论(0) 推荐(0) 编辑
摘要: 题目链接 解题思路: 9维概率Dp,类似于递推。 如果用填表法,发现根本不好转移。 考虑用刷表法。 f[5][5][5][5][5][5][5][5][5];//每一堆取了x个的概率 每次记录堆顶相等的数量。 这个数量记为base,即我们当前概率需要除的数字。 然后我们找到是哪些相等,顺推一下,推出 阅读全文
posted @ 2018-10-31 20:41 zxza695 阅读(173) 评论(0) 推荐(0) 编辑
摘要: 题目链接 题目描述: 已知前1.2.3....n项的前缀和 和 后缀和,记为st[],但是已经打乱,已知n个数在集合S中,求原数列。当存在多组可能的数列时,求字典序最小的数列。 题目思路: 真的玄学搜索对象,玄学时间复杂度。 暴力算法: 因为S中的数字1<=a[i]<=500,枚举每个数字a[i]。 阅读全文
posted @ 2018-10-31 19:15 zxza695 阅读(847) 评论(2) 推荐(0) 编辑
摘要: 题目链接 题目描述: 太长了不贴了。 解题思路: 不难想到二分g,判断一下,朴素的算法是n^2 * log(n)的。 check()函数: O(n^2)做法: f[i]表示到第i个点的最大分数。 f[i]=max(f[j])+s[i] (J满足x[j]+Max>=x[i],x[j]+Min<=x[i 阅读全文
posted @ 2018-10-31 16:14 zxza695 阅读(690) 评论(0) 推荐(0) 编辑
摘要: 题目链接: 题意: 有 v 间教室, 教室之间有 e 条双向边连接, 从一个教室走到另一个教室需要一定时间. 有 n 节课, 第 i 节课有两间教室, 默认要去第 c[i] 间教室, 可以申请到第 d[i] 间教室去, 申请通过的概率为 p[i], 所有申请必须在最开始提交. 求出提交申请个数不超过 阅读全文
posted @ 2018-10-31 13:27 zxza695 阅读(268) 评论(0) 推荐(0) 编辑
摘要: 题目描述 原题来自:USACO 2009 Feb. Silver 牡 mǔ,畜父也。牝 pìn,畜母也。 ——《说文解字》 约翰要带 N 只牛去参加集会里的展示活动,这些牛可以是牡牛,也可以是牝牛。牛们要站成一排,但是牡牛是好斗的,为了避免牡牛闹出乱子,约翰决定任意两只牡牛之间至少要有 K 只牝牛。 阅读全文
posted @ 2018-10-30 16:26 zxza695 阅读(898) 评论(0) 推荐(1) 编辑

Contact with me