关注
#include <iostream>
#include <vector>
#include <climits>
using namespace std;
vector<vector<int> > map;
int maxf = INT_MIN;
vector<pair<int,int>> shortesresult;
/*
To find the path with least cost;
Move left or right costs 1
Move Up costs 3
Move down costs 0
input:
4 4 10 // n m p p is total allowed cost
1 1 1 1
1 1 1 1
0 0 0 1
0 0 1 1
*/
bool dfs(int x,int y,int n,int m,int
p,vector<pair<int,int>> &result){
if(p <= 0){
return false; //
}
if(x == 0 and y == m){
result.push_back({x,y});
for(auto &p : result){
//cout << '[' << p.first <<
"," << p.second << ']';
}
//cout << p << endl;
if(p > maxf){
shortesresult = result;
maxf = p;
}
result.pop_back(); // bug!!!!!!
return true;
}
if(x < 0 || y < 0 || x > n || y > m ){
return false;
}
if(map[x][y] <= 0){
return false;
}
//cout << x << " " << y
<< " " << p << endl;
result.push_back({x,y});
map[x][y] = -1;
bool r1 = dfs(x + 1,y,n,m,p,result);
bool r2 = dfs(x,y + 1,n,m,p - 1,result);
bool r3 = dfs(x,y - 1,n,m,p - 1,result);
bool r4 = dfs(x - 1,y,n,m,p - 3,result);
result.pop_back();
map[x][y] = 1;
return false;
}
int main(){
int n,m,p,tmp;
cin >> n >> m >>p;
map = vector<vector<int>
>(n,vector<int>(m,0));
for(int i = 0; i < n; i ++){
for(int j = 0;j < m;j ++){
cin >> tmp;
map[i][j] = tmp;
}
}
vector<pair<int,int>> result;
bool isFirst = true;
dfs(0,0,n-1,m-1,p,result);
if(shortesresult.size() != 0){
for(auto &p : shortesresult){
if(!isFirst){
cout << ',';
}
cout << '[' << p.first << ","
<< p.second << ']';
isFirst = false;
}
}else{
cout << "Can not escape!" << endl;
}
cout << endl;
}
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
牛客热帖
更多
- 1... 面试最后的反问环节,能问些什么?(附特供问题)2.6W
- 2... BG一般,如何逆天改命拿下后端秋招SSP?1.3W
- 3... 从面试官的角度看待一场面试是怎么样的?8590
- 4... 害,找工作哪有不上当的!5669
- 5... 团、节、东孝子全部启动启动启动!(26届后端秋招总结)4535
- 6... 27届北漂实习day1(极致省钱版)4365
- 7... 项目经历混乱?STAR法则手把手教你梳理(附真实案例分析过程)4138
- 8... 双非硕的十月份秋招总结3931
- 9... 作为普通家庭出身的我,为什么非大厂不可?3901
- 10... 待了一年,一点没亏3754
正在热议
更多
# 实习在多还是在精 #
27161次浏览 204人参与
# 你的房租占工资的比例是多少? #
62420次浏览 789人参与
# 未岚大陆求职进展汇总 #
4286次浏览 59人参与
# 秋招踩过的“雷”,希望你别再踩 #
65785次浏览 924人参与
# 为什么国企只招应届生 #
206262次浏览 1230人参与
# 你见过哪些工贼行为 #
13283次浏览 80人参与
# 智慧芽求职进展汇总 #
872次浏览 5人参与
# 我的求职进度条 #
51799次浏览 796人参与
# 实习下班不想学习,正常吗? #
15338次浏览 154人参与
# 24届的你们现状如何了? #
97910次浏览 508人参与
# 反问环节如何提问 #
113506次浏览 2397人参与
# 校招谈薪一定要知道的事 #
10635次浏览 98人参与
# 如果不考虑收入,你最想做什么工作? #
31592次浏览 181人参与
# 顺丰求职进展汇总 #
62298次浏览 310人参与
# 找工作中的小确幸 #
22410次浏览 211人参与
# 小马智行求职进展汇总 #
12605次浏览 49人参与
# 你觉得什么岗位会被AI替代 #
13412次浏览 154人参与
# 我的租房踩坑经历 #
175335次浏览 1137人参与
# 通信硬件公司爆料 #
168195次浏览 536人参与
# 牛客租房专区 #
118011次浏览 1334人参与
# 华为池子有多大 #
102377次浏览 733人参与
# 工作中,努力重要还是选择重要? #
205216次浏览 2081人参与