
BFS&&DFS
Weach
学生
展开
-
湖南大学第十六届程序设计竞赛(重现赛)B
Yuki with emofunc and playf #include<bits/stdc++.h> #include <unordered_map> using namespace std; template<class...Args> void debug(Args... args) {//参数包Parameter pack auto tmp = { (cout << args << ' ', 0)... }; cout &原创 2021-07-16 10:22:32 · 153 阅读 · 2 评论 -
P2657 [SCOI2009] windy数--数位dp,dfs
题目 #include<bits/stdc++.h> using namespace std; typedef long long ll; const ll N = 1e3 + 5; const ll MOD = 1e9 + 7; const ll INF = 0x7fffffff; ll f[N][10];//表示有i位数字且最高位是j的情况下满足条件的总和 void init() {//预处理f数组 for (ll i = 0; i <= 9; i++) {//只有1位的情况下原创 2021-04-04 19:49:18 · 216 阅读 · 1 评论 -
HDU 2089 不要62--数位dp,dfs
HDU 2089 不要62 题目 #include<bits/stdc++.h> using namespace std; typedef long long ll; const ll maxn = 1e3 + 5; const ll MOD = 1e9 + 7; const ll INF = 0x7fffffff; ll f[maxn][10];//表示有i位数字且最高位是j的情况下满足条件的总和 void init(){//预处理f数组 for (ll i = 0; i <=原创 2021-04-02 20:53:11 · 175 阅读 · 0 评论 -
P2602 [ZJOI2010]数字计数--数位dp,dfs
题目 #include<bits/stdc++.h> using namespace std; typedef long long ll; const ll N = 1e3 + 5; const ll MOD = 1e9 + 7; const ll INF = 0x7fffffff; ll a[20]; ll m; ll f[N][10]; ll dfs(ll rest, ll sum, ll x, bool lead, bool limit){//没有前导0时lead为True if (re原创 2021-04-05 20:59:48 · 147 阅读 · 0 评论 -
poj1163 数字三角--dfs||dp
题目 DFS代码 #include<iostream> using namespace std; typedef long long ll; const ll maxn = 1e3 + 5; const ll MOD = 1e9 + 7; const ll INF = 0x7fffffff; ll n; ll a[maxn][maxn]; ll dp[maxn][maxn]; ll dfs(ll i,ll j) { if (i == n)return a[i][j];原创 2021-03-29 20:56:33 · 133 阅读 · 1 评论 -
HDU 1312--DFS,BFS典例
题意 输入一个“迷宫”,有红色和黑色方块两种,从给定起点出发,问能到达最多的黑色方块的数量 #include<bits/stdc++.h> using namespace std; typedef long long ll; const ll maxn = 1e3 + 5; const ll MOD = 1e9 + 7; const ll INF = 0x7fffffff; char room[23][23]; ll dir[4][2] = { {0,1},{-1,0},{0,-1},{1,0}原创 2021-03-28 21:19:39 · 239 阅读 · 0 评论 -
残缺的棋盘(BFS)
2014年湖南省赛:残缺的棋盘 一道版题,留一下方便以后 在国际象棋里,王是最重要的一个棋子。每一步,王可以往上下左右或者对角线方向移动一 步,如下图所示。 给定两个格子 A(r1,c1), B(r2,c2),你的任务是计算出一个王从 A 到 B 至少需要走多少步。为了避免题目太简单,我们从棋盘里拿掉了一个格子 C(r3,c3)(ABC 保证互不相同),要求王从 A走到 B 的过程中不能进入格子 C。在本题中,各行从上到下编号为 1-8,各列从左到右编号为1-8。 输入格式 输入包含不超过 10000 组原创 2020-08-01 16:47:22 · 251 阅读 · 0 评论 -
迷宫寻径问题(BFS最短路)
利用BFS求任意绘制迷宫的路径(感觉路径保存可以再优化下,害(・∀・)!) #include<iostream> #include<algorithm> #include<queue> #include<vector> using namespace std; int n, m; int begin_x, begin_y, end_x, end_y; int room[100][100];//最大为100*100的迷宫大小 int dir[4][2] = .原创 2020-10-26 21:01:04 · 323 阅读 · 0 评论 -
2021年度训练联盟热身训练赛第二场 F Interstellar Love
2021年度训练联盟热身训练赛第二场 F Interstellar Love链接 #include<bits/stdc++.h> using namespace std; typedef long long ll; const ll maxn = 1e3 + 5; const ll INF = 0x7fffffff; int n, m; vector<int>g[maxn]; int vis[maxn]; int fix, cnt; int BFS(int s) { if (原创 2021-03-17 20:45:58 · 177 阅读 · 0 评论 -
2021年度训练联盟热身训练赛第四场Game Map DFS
#include<bits/stdc++.h> using namespace std; typedef long long ll; const ll maxn = 1e6 + 5; const ll MOD = 1e9 + 7; const ll INF = 0x7fffffff; vector<int> g[maxn]; int ans[maxn]; int dfs(int u) { if (ans[u])return ans[u]; ans[u] = 1;原创 2021-03-28 20:31:25 · 283 阅读 · 0 评论