07 2021 档案
摘要:题目传送门。 在确定方向后,这道题也就不再是 NPC 问题了,而是询问从一个起点出发的,具有相同终点的两条路径的最小总长度。由此想到 DP 做法,且与 P1006 有相像之处。 不妨设 \(f[i][j]\) 为一个点走到 \(i\) 位置,一个点走到 $j$ 位置(由于 \(f[i][j]=f[
阅读全文
摘要:声明:对于这部分知识我也是从网上学习的,若有雷同绝非有意抄袭。 0x01 简介 珂朵莉树,又名 ODT,出自 CF896C 的正解。主要处理区间修改、查询问题。 是一种基于std::set的 ”指代一种特定的基于数据随机的算法“,它不是数据结构,这点 lxl 先生本人也承认了。 它的适用范围狭小,当
阅读全文
摘要:题目传送门。 善良的出题人已经在题面中告诉你了: 尚未发现运行速度比平方时间明显更优的解法。 而 \(O(qn^2)\) 过不了,所以题目显然是让你以 \(O(n^2)\) 进行预处理,再进行 \(O(1)\) 查询。 思考在暴力 \(O(n^3)\) 处理时,我们是以三元组 \((i,j,k)\)
阅读全文
摘要:题目传送门 第一眼看到题面时可能觉得需要用 dijstra 或分层图之类,但注意到数据范围很小(都是 \(\leqslant1000\)),因此考虑好写的 DP。 首先当然需要使用邻接表存图。 不妨设 \(f_{i,j}\) 为第 \(i\) 天在第 \(j\) 个城市所获利润,易得状态转移方程:
阅读全文
摘要:!a \(\Leftrightarrow\) a==0 , a \(\Leftrightarrow\) a!=0 memset 只能对数组的一维赋值 sort 函数默认升序排列,即 \(x<y\) 把 INF 设到足够大,但也别大到 0x7fffffff 记得时刻取模,有减法时记得先 +mod 再
阅读全文
摘要:这道题我们或许会首先想到列举出每一种情况,但这样太麻烦。这道题还是有规律可循。 自己列举几种情况后可以发现,无论初始状态是什么样,无论怎么挪动,在不算 \(\mathtt{X}\) 时,顺时针方向上 \(\mathtt{A,B,C}\) 的顺序恒定。 因此使用数组储存初始顺序,再将其与给出的结果顺序
阅读全文
摘要:By Zhang_RQ 哈希 对于一个长度为 n 的字符串,其哈希值为 \(\sum\limits_{i=1}^ns_i\times base^{n-i}\bmod p\),其中 \(base\) 和 \(p\) 自选 判断两个字符串的一个方法是直接判断哈希值是否相等(虽然说有概率出错)。 可以快速
阅读全文
摘要:题目传送门 先设 \(x\) 为当前得分,当又得到 \(1\) 分时,有: \[ (x+1)^3=x^3+3x^2+3x+1 \] 由于原先得分为 \(x^3\) ,可知每次 \(+1\) 都会增加 \(3x^2+3x+1\) 分。 在代码实现过程中,用 \(x\) 维护一维 \(x\) ,\(y\
阅读全文
摘要:0x01 读题 \(……\) 0x02 分析 仔细看看,发现是一道完全背包变形问题。 我们珂以想:以 \(V\) 为外层循环,枚举每一个总方案的值 先看看规律: 自己可以在画图工具上画画,枚举$4$~$5$种,蒟蒻画的太丑了 0x03 状态转移方程 \(f[j]=f[j-m[i]]\) 0x04 代
阅读全文
摘要:考试题传送门 我靠为啥考场一个不会,下来做觉得除了 T1 水的一批啊 T4被 \(Hack\) 没资格说水/lb T1 实 在 不 会 /kk 观摩一下 @Blueqwq 彁彁の Random 吧 #include <bits/stdc++.h> #define int long long usin
阅读全文
摘要:Program in C++14 据说某位神犇说过:数位DP就是抄板子的日常 对不对先不说但是要是谁有板子给我一个,数位DP确实有套路 T1:\(P2606\) 模板题不讲 如果需要,这里有神犇 \(\mathtt{zrt}\) 的视频。私信我领取,从 \(\mathtt{1:01:30}\) 开看
阅读全文
摘要:不要问我为啥鸽到6.5 Program in C++14 T1:\(P1474\) 一道完全背包 就一元一元的凑 易得状态转移方程: \[ f[j]+=f[j-m[i]]; \] 其中 \(f[j]\) 代表凑成 \(j\) 元有 \(f[j]\) 种方法, \(m[i]\) 代表第 \(i\) 个
阅读全文
摘要:扩展欧拉定理 #include<bits/stdc++.h> using namespace std; typedef long long ll; ll a,b,m,phi; string s; ll calc_phi(ll x){ ll ret=x; for(int i=2;i<=sqrt(x);
阅读全文
摘要:0x00 前言 艹,我怎么就没想到大模拟呢 0x01 读题 \(……\) 0x02 分析 区间$dp$没什么好说的 我们通过一个$w[i]$存储计数的大小,从一位到三位,所以还有一个方程 当然$f$的初始化也很重要。我tm卡了半个小时就是因为我赋值大了 memset(f,0x3f,sizeof(f)
阅读全文
摘要:0x01 读题 \(……\) 0x02 分析 数据范围巨大$(n\leq10^{18})$,显然不能用常见的递推求解。发现考点是快速幂 \(C^x_y=\dfrac{n!}{i!(n-i)!}\) 问题转化为求 \(\sum\limits_{i=0}^n \dfrac{\prod\limits_{k
阅读全文
摘要:0x00 前言 自己整了个翻译呢 一开始写的超级复杂 后开借鉴别人思路才知道其实不长 0x01 读题 在团队队列中,每个元素都属于一个团队。 如果元素进入队列。它首先从头到尾搜索队列,检查它的一些团队成员(同一团队的元素)是否已经在队列中。如果是,它就插入它们的后面。如果不是,它将在尾部进入队列并成
阅读全文
摘要:题目传送门 我记得我刚学OI时教练wangk就讲过,鸽到现在才写与其是弱智题解,不如说是纪念 还挺简单的,就是个记忆法搜索模板题 #include<algorithm> #include<bitset> #include<cctype> #include<cerrno> #include<cloca
阅读全文
摘要:前情提示:会TLE,吸口氧可以过 先想到:对于一个系统,当且仅当前面的数凑得出来这个数 之后就像一个完全背包了 Code: #include<algorithm> #include<bitset> #include<cctype> #include<cerrno> #include<clocale>
阅读全文
摘要:草了 我不得不承认我孤陋寡闻了 因为这是我见到的第一道卡MLE的题 前几次提交 \((60 - 80pts):\) #include<algorithm> #include<bitset> #include<cctype> #include<cerrno> #include<clocale> #in
阅读全文
摘要:读题 我们首先看标签想到DFS,当然了不剪枝是不可能拿全分的 \[ 剪枝方法\begin{cases}1.从下往上搜\\2.当前的奶油面积+之后的最小奶油面积>现在已求出的的最小奶油面积——果断\ return\\3.当前的体积+之后的最大体积<体积总数,果断\ return\end{cases}
阅读全文
摘要:题目传送门 在看到这道题后,首先想到直接暴力的做法,但显然在面对 \(10^9\) 时会 TLE 。 由此我们可以想到数论分块的做法。 出题人十分热心,在题干后加上了一句颇为显然但易被忽略的性质: 其中 \(k\bmod i\) 表示 \(k\) 除以 \(i\) 的余数。 形式化的,它表示 \(k
阅读全文
摘要:Act1.读题 呐呐~这里是敲可爱的传送门 Act2.正解 用 \(f[i][0]\) 来存储 \(0\) 到 \(i\) 位数字中不含 \(4\) 和 \(62\) 的数字个数,即幸运数 用 \(f[i][1]\) 来存储 \(0\) 到 \(i\) 位数字中以 \(2\) 开头的幸运数。 用 \
阅读全文
摘要:\(……\) 腿疼,打字没力气,放代码就咕了 感谢神仙 $wsy \(_\) jim$ 提供思路 #include<algorithm> #include<bitset> #include<cctype> #include<cerrno> #include<clocale> #include<cma
阅读全文
摘要:0x0F 前言 撒币数位 \(DP\) 坑杀我也 没有模板自己敲了快两个小时的我是屑 (还不得不向度娘求教) 0x01 读题 \(……\) 0x02 基础分析 找符合规定的数,显然是数位$DP$。 (以下是没有板子的讲解) $0\sim9$都是$windy$数,所以先预处理一下 for(int i=
阅读全文
摘要:0x01 读题 \(……\) 0x02 分析 题中指出了给出的关系是树,相互有依赖关系,又让最大值,本题思路可知是 \(bfs\) 和记忆化搜索 可惜本蒟蒻不会记忆化搜索 \(qwq\) 您应该清楚,任何记忆化搜索都可以写成 \(dp\) ,(只是不同的题写法的简便程度不同),所以我们又可以想到树状
阅读全文
摘要:题目传送门 提供两种做法 1.Dijstra最短路 正常连边后,对于每个位置 \(i\) 都加上 \(i-1->i\) 和 \(i->i+1\) ,长度为 \(1\) 的边,相当于先按照原方法走再改动。 不过题目中要求改动后的数必须是自然数(也就是正整数),所以不是所有点都可以加,必须逐个判断能否改
阅读全文
摘要:0x00 前言 (我说我在快睡着的情况下写了个这你信吗 0x01 区间查询 #include<bits/stdc++.h> #define int long long//跟同机房大佬学到的,懒到无可救药时可以写写,考试时千万别 using namespace std; const int N=500
阅读全文
摘要:啊这不简单 ? ( \(doge\) a=int(input()) b=int(input()) print(a+b) print(a-b) print(a*b) print(a//b) 短短几行而已 \(python\ ,\ yyds\) 下面是正式的 \(C++\) 开始 0x01 代码 注:转
阅读全文
摘要: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
阅读全文
摘要:又名:匈牙利算法的封建 $ (bushi$ 匈牙利增广路算法,简称匈牙利算法 原理:反转一条交错路径之后匹配边数$+1$,找增广路 我们先来假设一个通篇都要用到的前提: 现在有 \(n\) 名男生, \(m\) 名女生。其中有 \(k\) 对男女互有好感,保证不出现gay或百合 一人不一定只有一个人
阅读全文
摘要:前排提示:谨慎操作!!! 部分参考于 这篇文章 请在服务器边上进行此操作(虚拟机的忽略这句吧) 虚拟机环境:VMware Workstation Pro 起因 搞到了3个RedHat7.6,占了tm 100GB (其余10GB左右是原神和Steam) 高高兴兴打开之后: 淦 于是只能破解 正题 1.
阅读全文
摘要:前情提示:本蒟蒻第一次写博客类文章,$dalao$勿喷…… 首先,矩阵是个二位数表 形如 \[ \left[ \begin{matrix} a_{1,1}&a_{1,2}&\cdots &a_{1,n}\\ a_{2,1}&a_{2,2}&\cdots &a_{2,n}\\ \\ \vdots &\
阅读全文
摘要:By i207M DFS(图) 深度优先遍历图的方法是,从图中某顶点v出发: 访问顶点v; 依次从v的未被访问的邻接点出发,对图进行深度优先遍历,直至图中和v有路径相 通的顶点都被访问; 若此时图中尚有顶点未被访问,则从一个未被访问的顶点出发,重新进行深度优先 遍历,直到图中所有顶点均被访问过为止。
阅读全文
摘要:$……$貌似没甚么要说明的 $Lucas$定理 #include<bits/stdc++.h> using namespace std; typedef long long ll; int t,g; int qpow(int a,int b,int md){ ll res=1; for(;b;b>>
阅读全文
摘要:一个菜鸡的小博客,请看看哦~ 对了,我来给你介绍介绍博客吧 ╰(*°▽° *)╯ 主页图片较多,可能加载较慢,请耐心等待哦 0x01 分类与位置 第 0 位的是 “ 通知 ” ,就是字面意思哦~ 第 1 位的是 “ 游记 ” ,但是本人还没参加任何正式比赛ಥ_ಥ 第 2 位的是 “ 比赛总结 ”,有
阅读全文

浙公网安备 33010602011771号