摘要: 一种很有意思的GCD写法(代码为xuziyang大佬所写) long long gcd(long long a,long long b){ if(a==0) return b; if(b==0) return a; if(!(a&1)&&!(b&1))//判断“如果a、b都为偶数”。&1表示按位与二 阅读全文
posted @ 2022-03-03 20:35 21xf2257 阅读(27) 评论(0) 推荐(0) 编辑
摘要: https://www.luogu.com.cn/problem/UVA10032 很特别的 dp,并且有背包思想。 1. 简洁题意: 把 $n$ 个数分为两堆,一堆中有 $\lfloor n/2 \rfloor$ 个数,另一堆中有其他的数,要求两堆数尽量接近。 ### 2. 题目分析(位运算 + 阅读全文
posted @ 2022-03-03 20:32 21xf2257 阅读(32) 评论(0) 推荐(0) 编辑
摘要: https://www.luogu.com.cn/problem/P7690 1.题意有 $N$ 块长方形的木板,长度分别为 $1, 2 ,…,N$,宽度都是 $1$ 。 现在要用这 $N$ 块木板组成一个宽度为 $N$ 的围栏,满足在围栏中,每块木板两侧的木板要么都比它高,要么都比它低。 也就是说 阅读全文
posted @ 2022-03-03 07:09 21xf2257 阅读(35) 评论(0) 推荐(0) 编辑
摘要: Description 给定一段时间内股票的每日售价 , 售价为正 $16$ 位整数。每次你选择购买时,当前的股票价格必须严格低于你之前购买股票时的价格。 编写一个程序,确定你应该在哪些天购进股票,可以使得你能够购买股票的次数最大化。 数据范围 : $1≤N≤5000$ 。 例如,下面是一个股票价格 阅读全文
posted @ 2022-03-03 06:51 21xf2257 阅读(21) 评论(0) 推荐(0) 编辑
摘要: 思路框架整理 1.考点 双向 dp。 2.状态设定 $f[l,r]$ 表示 $l$ $-$ $r$ 折叠成的最小长度。 3.转移 分为两部分: ① 区间 dp 常见解法——拆开序列 $$f[l,r]=\max {f[l,k] + f[k+1,r]}$$ ② 不断重复 $f[l,r]$,尝试用它更新更 阅读全文
posted @ 2022-03-03 06:46 21xf2257 阅读(24) 评论(1) 推荐(0) 编辑
摘要: 一.题意 有一些装有铀(用 $\mathrm{U}$ 表示)和铅(用 $\mathrm{L}$ 表示)的盒子,数量均足够多。要求把 $\mathrm{N}$ 个盒子放成一行,但至少有 $3$ 个 $\mathrm{U}$ 放在一起,有多少种方法? 二.解法 一种常见套路:方案数=总方案数-不合法方案 阅读全文
posted @ 2022-03-03 06:32 21xf2257 阅读(113) 评论(1) 推荐(0) 编辑