摘要: 读题 我们首先看标签想到DFS,当然了不剪枝是不可能拿全分的 \[ 剪枝方法\begin{cases}1.从下往上搜\\2.当前的奶油面积+之后的最小奶油面积>现在已求出的的最小奶油面积——果断\ return\\3.当前的体积+之后的最大体积<体积总数,果断\ return\end{cases} 阅读全文
posted @ 2021-07-14 19:43 BFNewdawn 阅读(19) 评论(0) 推荐(0) 编辑
摘要: 题目传送门 在看到这道题后,首先想到直接暴力的做法,但显然在面对 \(10^9\) 时会 TLE 。 由此我们可以想到数论分块的做法。 出题人十分热心,在题干后加上了一句颇为显然但易被忽略的性质: 其中 \(k\bmod i\) 表示 \(k\) 除以 \(i\) 的余数。 形式化的,它表示 \(k 阅读全文
posted @ 2021-07-14 19:35 BFNewdawn 阅读(37) 评论(0) 推荐(0) 编辑
摘要: Act1.读题 呐呐~这里是敲可爱的传送门 Act2.正解 用 \(f[i][0]\) 来存储 \(0\) 到 \(i\) 位数字中不含 \(4\) 和 \(62\) 的数字个数,即幸运数 用 \(f[i][1]\) 来存储 \(0\) 到 \(i\) 位数字中以 \(2\) 开头的幸运数。 用 \ 阅读全文
posted @ 2021-07-14 19:33 BFNewdawn 阅读(24) 评论(0) 推荐(0) 编辑
摘要: \(……\) 腿疼,打字没力气,放代码就咕了 感谢神仙 $wsy \(_\) jim$ 提供思路 #include<algorithm> #include<bitset> #include<cctype> #include<cerrno> #include<clocale> #include<cma 阅读全文
posted @ 2021-07-14 19:32 BFNewdawn 阅读(25) 评论(0) 推荐(0) 编辑
摘要: 0x0F 前言 撒币数位 \(DP\) 坑杀我也 没有模板自己敲了快两个小时的我是屑 (还不得不向度娘求教) 0x01 读题 \(……\) 0x02 基础分析 找符合规定的数,显然是数位$DP$。 (以下是没有板子的讲解) $0\sim9$都是$windy$数,所以先预处理一下 for(int i= 阅读全文
posted @ 2021-07-14 19:31 BFNewdawn 阅读(36) 评论(0) 推荐(0) 编辑
摘要: 0x01 读题 \(……\) 0x02 分析 题中指出了给出的关系是树,相互有依赖关系,又让最大值,本题思路可知是 \(bfs\) 和记忆化搜索 可惜本蒟蒻不会记忆化搜索 \(qwq\) 您应该清楚,任何记忆化搜索都可以写成 \(dp\) ,(只是不同的题写法的简便程度不同),所以我们又可以想到树状 阅读全文
posted @ 2021-07-14 19:30 BFNewdawn 阅读(21) 评论(0) 推荐(0) 编辑
摘要: 题目传送门 提供两种做法 1.Dijstra最短路 正常连边后,对于每个位置 \(i\) 都加上 \(i-1->i\) 和 \(i->i+1\) ,长度为 \(1\) 的边,相当于先按照原方法走再改动。 不过题目中要求改动后的数必须是自然数(也就是正整数),所以不是所有点都可以加,必须逐个判断能否改 阅读全文
posted @ 2021-07-14 19:29 BFNewdawn 阅读(163) 评论(0) 推荐(0) 编辑
摘要: 0x00 前言 (我说我在快睡着的情况下写了个这你信吗 0x01 区间查询 #include<bits/stdc++.h> #define int long long//跟同机房大佬学到的,懒到无可救药时可以写写,考试时千万别 using namespace std; const int N=500 阅读全文
posted @ 2021-07-14 19:28 BFNewdawn 阅读(24) 评论(0) 推荐(0) 编辑
摘要: 啊这不简单 ? ( \(doge\) a=int(input()) b=int(input()) print(a+b) print(a-b) print(a*b) print(a//b) 短短几行而已 \(python\ ,\ yyds\) 下面是正式的 \(C++\) 开始 0x01 代码 注:转 阅读全文
posted @ 2021-07-13 22:25 BFNewdawn 阅读(34) 评论(0) 推荐(0) 编辑
摘要: 0x01 线段树 #include<bits/stdc++.h> using namespace std; typedef long long ll; const int M=1e6; char buf[1<<21],*p1=buf,*p2=buf; ll n,m,q; ll sum[M<<2],a 阅读全文
posted @ 2021-07-13 22:23 BFNewdawn 阅读(37) 评论(0) 推荐(0) 编辑