摘要: 数论基础 算术基本定理(唯一分解定理) 任何一个大于1的自然数都可以唯一分解成有限个素数的乘积 $N=p_1^{a_1}\times p_2^{a_2}\times...\times p_n^{a_n} | p_1<p_2<...<p_n ,a_i\in Z$ 上式中$p_i$为素数 有关素数筛 埃 阅读全文
posted @ 2018-11-02 23:15 computer_luo 阅读(308) 评论(0) 推荐(0) 编辑
只有注册用户登录后才能阅读该文。 阅读全文
posted @ 2018-12-23 18:44 computer_luo 阅读(181) 评论(0) 推荐(0) 编辑
摘要: 题意 有一个前缀和是平方数的序列,也就是一个严格递增平方数的差分序列,奇数项丢了,给出偶数项,要求输出所有项。 思路 首先列出一个式子,对于题设差分序列中的一项c,必定要满足有$a^2-b^2=c$,即$(a-b)\times(a+b)=c$,那么现在已知c,如何定出a和b呢,很容易想到把c因式分解 阅读全文
posted @ 2018-12-17 17:51 computer_luo 阅读(295) 评论(0) 推荐(0) 编辑
摘要: 题意 给出至多1e5个长度不超过1e5的括号序列,问将他们排序重组后最多能有多少对合法括号 思路 先将已经匹配的括号全部去掉,然后我们的序列就只会剩下三种形式——$"((((("$,$"))))((("$,$"))))"$,然后这时候就只有序列的左右括号的数量起作用了,所以我们只需通过这个条件来对他 阅读全文
posted @ 2018-12-11 18:27 computer_luo 阅读(129) 评论(0) 推荐(0) 编辑
摘要: 题意 在一个数据结构上实现区间加一,询问区间内$a_i/b_i$的和,$b_i$是事先给出的一个序列 思路 线段树维护区间最小值与区间和,区间最小值维护$a_i$序列,每次加操作区间最小值减一,如果最小值减到零,就去暴力更新区间和,区间和维护的是答案的和。 代码 后记 还是要学会线段树的灵活运用的! 阅读全文
posted @ 2018-12-10 12:44 computer_luo 阅读(119) 评论(0) 推荐(0) 编辑
摘要: 题意 升级版的方格取数 思路 图中选一个点就不能选四周的点,转化为二分图,求最大点权独立集。要求最大点权独立集,即是求最小点权覆盖,求点权和减去最小割,即是求最小割,即是求最大流,关于建图,每个点向周围四个点建边即可,证明与说明略。 代码 阅读全文
posted @ 2018-12-09 13:53 computer_luo 阅读(131) 评论(0) 推荐(0) 编辑
摘要: 题意 求与上方的线段都没有交集的线段 思路 暴力判断线段交即可。 判断线段交的方法: 1.快速排斥实验 如图,如果两条线段不相交,他们所组成的矩形也不相交,而判断矩形相交是很方便的,用这个方法可以快速筛掉一些线段。 当然这并不是充要条件,两矩形相交也可能线段不相交。 所以矩形不相交是线段不相交的充分 阅读全文
posted @ 2018-12-07 11:13 computer_luo 阅读(147) 评论(0) 推荐(0) 编辑
摘要: 思路 被这道题折磨死了,只是发上来纪念一下,思路同方格取数(1),我已经疯了! 代码 阅读全文
posted @ 2018-12-05 23:59 computer_luo 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 题意 给定n*n的一个矩阵,每个格子有个非负数,要求是取了这个数就不能取它相邻的数,要使得取得数总和最大。 思路 这题一开始完全不知道怎么搞,查了题解之后发现有状压的做法和网络流(最大团)的做法,然而最大团已经触及我的知识盲区了,有空再补一下这个做法。 这里谈状压dp的解法。限于空间和时间,当然不能 阅读全文
posted @ 2018-12-05 16:54 computer_luo 阅读(192) 评论(0) 推荐(0) 编辑
摘要: 题意 要把一些珠子串成一串,每个珠子只可以和限制特定的别的珠子串在一起,给定珠子数量和限制条件,求能组成的不同的项链的种数。 思路 看数据范围,再加上这是有限制条件的问题求解,很容易发现是状压dp的问题。dp[i][j]表示放下第i个珠子后的状态为j(即i为前一个珠子),只要保证下一个珠子能和前一个 阅读全文
posted @ 2018-12-03 23:01 computer_luo 阅读(116) 评论(0) 推荐(0) 编辑
摘要: 题意 一个人要完成作业,给定作业的ddl和完成所需时间,超时扣分,要决定完成作业的顺序使得扣分最少 思路 暴力枚举需要n!次,不可取,但发现做完相同的题目时,用时是相同的,但扣分不同,就想到利用状态压缩,把做了哪几题的状态用1<<n的状态数记录,dp[i]表示状态为i时的扣分,最小化dp[i] 然后 阅读全文
posted @ 2018-12-03 09:31 computer_luo 阅读(107) 评论(0) 推荐(0) 编辑