算法
文章平均质量分 50
qq_43725311
这个作者很懒,什么都没留下…
展开
-
CSP常用知识点
有unsigned long long 这种类型bitset< n > b原创 2021-09-12 15:50:48 · 1133 阅读 · 0 评论 -
Emiya家今天的饭
题目来源: Emiya家的饭代码#include <bits/stdc++.h>using namespace std;const int MOD = 998244353;const int N = 1e2 + 10;const int M = 2e3 + 10;typedef long long ll;int a[N][M];int s[N];int n, m;int dp[N][N << 2];//dp[i][j]表示前i种烹饪方法,越界食材-合法食材的差为原创 2021-09-05 10:04:27 · 139 阅读 · 0 评论 -
常用图算法
图算法SPFA算法SPFA算法 SPFA算法在BellmanFord算法的基础上,通过队列的方式,减少了松弛的次数。队列中存储被成功松弛的点,如果邻接点成功松弛,则将其加入到队列中。 下面为利用SPFA计算最长路的C++代码。struct Edge { int to, w;};vector<Edge>G[maxn];int dis[maxn];bool vis[maxn];void spfa(int s) { for (int i = 1; i <= n; i++原创 2021-08-11 21:52:51 · 76 阅读 · 0 评论 -
CSP201403-4 无线网络
CSP201403-4 无线网络题目链接:CSP201403-4解题思路 首先考虑这m个位置都可以放路由器,没有k的限制。如果两个路由器的距离不超过r就可以建立连接,则该问题就成了一个图中求两点之间的距离的问题,图中所有边的权重为1。从源点开始BFS,第一次碰到终点得到的距离就是两者之间的最短距离。 加上k的限制后,路由器被分为两部分,一部分是前n个没有数量限制的,另一部分是后m个有数量限制的。在BFS的过程中对于遍历的每一个点多记录一下遍历到这个点的时候已经使用了多少个第二部分的路由器,如果已原创 2021-04-07 20:11:24 · 184 阅读 · 0 评论 -
CSP201312-3 最大矩形
CSP201312-3 最大矩形题目要求: 找出给定直方图中面积最大的矩形。解题思路 利用单调栈的思想。对于输入的高度数组,向右和向左两次遍历扫描,对于当前考虑的元素h[i]来说,分别找到向右的第一个小于h[i]的元素的下标和向左的第一个小于h[i]的元素的下标。两者只差就是可以以h[i]作为矩形高的矩形的长。 这里使用数组来模拟栈。当前考虑的元素为栈顶元素。栈内保存的是元素的下标。利用栈顶元素和循环遍历的元素相比较。值的注意的是,为了能够最后将栈中所有元素都弹出,在向右遍历的时候需要比输原创 2021-04-06 19:41:59 · 117 阅读 · 0 评论