摘要:
洛谷p1073 最优贸易 链接 首先易得暴n2的暴力,暴力枚举就行 显然1e5的数据是会炸的 我们再分析题意,发现一共分为两个个步骤,也可以说是状态,即在一个点买入,在另一个点卖出,我们可以构建一个三层分层图 第一层的每个点和第二层的对应点各连接一条权值为-val[i](val[i]表示i号点的水晶 阅读全文
摘要:
洛谷1082 同余方程 \(a x \equiv 1 \pmod {b}\) 根据同余式的定义,我们可以知道一个一次同余方程一定可以写成 ax+by=c的不定方程形式 简单证一下吧 比如 \(a x \equiv c \pmod {b}\) 我们引入一个变量k,根据mod运算的性质,我们可知该式一定 阅读全文
摘要:
欧拉筛 筛法我们肯定都不陌生,用来求一定序列内素数个数的方法麻,但在学习完埃氏筛法后(如果没学过可以去学一下再看),我们发现它似乎做了很多多余的操作,一个数会被他的质所有筛 一遍,但我们本质上筛一遍就够了,所以我们有没有什么方法去优化它呢?欧拉筛随之而出,欧拉筛的特点便是一个数只会被它的最小质因子筛 阅读全文
摘要:
洛谷 P1220 关路灯 分析一下,明显的区间dp,我们以dp [i] [j] [1]表示在i 到j的路灯已关,且老张在j点的情况下所用功耗的最小值,dp [i] [j] [0]则表示老张在i点,接着就是区间dp部分,见代码 #include<iostream> #include<cstdio> # 阅读全文
摘要:
洛谷 P1052 过河 思路部分可以看这篇博客 我将在这里对其进行一些解释与补充 首先我们先看题 乍一看 这不是模板题吗 然后开开心心的敲了一个简单dp上去 #include<iostream> #include<cstdio> #include<algorithm> #include<cstrin 阅读全文
摘要:
洛谷 p 1053 篝火晚会 至于思路以及代码解释,个人觉得洛谷的题解已经很清楚了,故就不多解释了 有一点不是很清楚,就是如果将c数组的初始值定义为 正:c[0]=1;c[1]=l[1];反:c[0]=1;c[1]=r[1]时会wa一个点,但在我看来好像并没有什么区别,如果有人知道,可以在下面告诉我 阅读全文
摘要:
四维dp例题 四维dp便是维护4个状态的dp方式 拿题来说吧。 1. 洛谷P1004 方格取数 #include<iostream> #include<cstdio> using namespace std; const int maxn=12; int n; int map[maxn][maxn] 阅读全文
摘要:
P2607 [ZJOI2008]骑士 本题本质上就是树dp,和没有上司的舞会差不多,只不过多了一个对基环树的处理。 #include<iostream> #include<cstring> #include<string> #include<cstdio> #define ll long long 阅读全文
摘要:
最长下降子序列 1. 最长下降子序列,指的便是一个序列中,数字依次减小且长度最长的序列。 例如 7 4 3 2 8 9 10 中 7 4 3 2 便是该序列的最长下降子序列 那一个序列的最长下降子序列怎么求呢? 有两种复杂度不同的做法,下面先介绍n2做法 #include<iostream> #in 阅读全文