摘要: 1 #include<iostream> 2 #include<cstdio> 3 #include<cstring> 4 using namespace std; 5 const int maxn=110; 6 int f[maxn][maxn]; 7 int ff[maxn][maxn]; 8 阅读全文
posted @ 2020-08-22 11:08 zkw666 阅读(182) 评论(0) 推荐(0) 编辑
摘要: 单源最短路径,非负权图,所以可以用Dijkstra; 具体看代码: 1 #include<iostream> 2 #include<cstdio> 3 #include<vector> 4 #include<queue> 5 #include<algorithm> 6 #include<cstrin 阅读全文
posted @ 2020-07-31 13:42 zkw666 阅读(182) 评论(0) 推荐(0) 编辑
摘要: 显然是一道广搜模板题; 代码: 1 #include<iostream> 2 #include<cstdio> 3 #include<queue> 4 #include<cstring> 5 using namespace std; 6 7 struct zkw{ 8 int x; //所在位置的横 阅读全文
posted @ 2020-07-19 14:25 zkw666 阅读(147) 评论(0) 推荐(0) 编辑
摘要: 解释一下题意:HKE爬山,给你几个点的坐标,爬山时必须全部经过给出的点。山是立体的,所以给出的点是对应在立体直角坐标系中的,有x,y,z;所以直接for循环全部循环一遍,每次计算距离,边走边加。不过不要忘了排序,因为HKE经过的每一个点高度 z 都比上一个点高,所以就要对 z 从小到大进行排序。 代 阅读全文
posted @ 2020-06-06 16:41 zkw666 阅读(275) 评论(0) 推荐(0) 编辑
摘要: 这个题就是一个01背包的模板题; 代码: 1 #include<iostream> 2 using namespace std; 3 struct zkw{ 4 int w; 5 int c; 6 }; 7 zkw a[3500]; 8 int f[2200]; 9 int main() 10 { 阅读全文
posted @ 2020-05-22 15:26 zkw666 阅读(338) 评论(0) 推荐(0) 编辑
摘要: 洛谷上标签显示算法是 bfs,所以肯定是用广搜啦。 我的思路是在所给的方针外在添一圈0;也就是这样: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 1 1 0 0 1 0 0 1 1 0 0 0 1 0 0 1 0 0 0 0 1 0 0 1 阅读全文
posted @ 2020-05-15 17:33 zkw666 阅读(177) 评论(0) 推荐(1) 编辑
摘要: 要求二项式的幂的某个系数的话,到了初中就应该会知道可以用 杨辉三角 这个东西来求系数。举几个例子吧: 1 1 2 1 1 3 1 2 1 (a+b)^2=a^2+2ab+b^2 4 1 3 3 1 (a+b)^3=a^3+3ba^2+3ab^2+b^3 5 1 4 6 4 1 …… 6 1 5 10 阅读全文
posted @ 2020-05-02 16:14 zkw666 阅读(278) 评论(0) 推荐(2) 编辑
摘要: 这个题其实就是一个求全排列的问题,全排列的话在 algorithm 库里有一个非常好用的函数——next_permutation。 先介绍一下这个函数怎么用: 1 #include<iostream> 2 #include<algorithm> 3 using namespace std; 4 in 阅读全文
posted @ 2020-04-25 11:17 zkw666 阅读(189) 评论(0) 推荐(1) 编辑
摘要: 这个题用贪心做肯定不行的,因为贪心得到的只是局部最优解,而这个题需要的是全局最优解,所以就用到了动态规划。 用动态规划一定要找到这个题的状态转移方程。每一个物体,都只会有两种情况:装入箱子 和 不装入箱子,所以,定义两个数组,第一个数组s[]用来存储当容量为某某时,能装的最大体积,第二个数组a[]用 阅读全文
posted @ 2020-04-25 10:41 zkw666 阅读(162) 评论(0) 推荐(2) 编辑
摘要: 思路:定义一个一维数组,存储每个兵营所含的人数,假设这个数组为a数组,100%的数据满足 n≤10^5;所以 a[100010];然后,再求出龙虎双方的势力: 1 for(int i=1;i<m;++i) 2 { 3 p+=(m-i)*a[i]; 4 } 5 for(int i=m+1;i<=n;+ 阅读全文
posted @ 2020-04-18 11:47 zkw666 阅读(276) 评论(0) 推荐(1) 编辑