关注
第二题跟你思路差不多
#include <stdio.h>
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
int map[11][11];
int cnt[100][100];
int flag[100][100];
int inf=100;
struct point
{
int x;
int y;
};
int f(int n,int m,vector<point> &vec)
{
int x=0,y=0;
while (1)
{
if(y+1<n&&map[x][y+1]==1&&flag[x][y+1]==0)
{
cnt[x][y+1]=cnt[x][y]+1;
y=y+1;
point p;p.x=x,p.y=y;
vec.push_back(p);
flag[x][y]=1;
}
else if(x-1<n&&map[x-1][y]==1&&flag[x-1][y]==0)
{
cnt[x-1][y]=cnt[x][y]+3;
x=x-1;
point p;p.x=x,p.y=y;
vec.push_back(p);
flag[x][y]=1;
}
else if(x+1<n&&map[x+1][y]==1&&flag[x+1][y]==0)
{
cnt[x+1][y]=cnt[x][y];
x=x+1;
point p;p.x=x,p.y=y;
vec.push_back(p);
flag[x][y]=1;
}
else if(y-1<n&&map[x][y-1]==1&&flag[x][y-1]==0)
{
cnt[x][y-1]=cnt[x][y]+1;
y=y-1;
point p;p.x=x,p.y=y;
vec.push_back(p);
flag[x][y]=1;
}
else
{
point p=*(vec.end()-1);
map[p.x][p.y]=0;
flag[p.x][p.y]=0;
vec.pop_back();
}
//cout<<x<<","<<y<<endl;
if(x==0&&y==m-1)
break;
}
return vec.size();
}
int main()
{
int n,m,p;
while (cin>>n>>m>>p)
{
for(int i=0;i<n;i++)
{
for(int j=0;j<m;j++)
cin>>map[i][j];
}
vector<point> vec;
int rtn = f(n,m,vec);
if(rtn>=p)
cout<<"Can not escape!"<<endl;
else
{
cout<<"[0,0]";
for(int i=0;i<vec.size();i++)
cout<<",["<<vec[i].x<<","<<vec[i].y<<"]";
cout<<endl;
}
}
}
查看原帖
点赞 1
相关推荐
牛客热帖
更多
正在热议
更多
# 同bg的你秋招战况如何? #
172907次浏览 1013人参与
# 2022毕业即失业取暖地 #
115439次浏览 702人参与
# 京东开奖 #
462998次浏览 2607人参与
# 你实习是赚钱了还是亏钱了? #
28199次浏览 233人参与
# 哪些公司校招卡第一学历 #
219351次浏览 775人参与
# 用一句话形容你的团队氛围 #
17299次浏览 176人参与
# 联影求职进展汇总 #
50376次浏览 321人参与
# 牛客租房专区 #
121957次浏览 1347人参与
# 毕业论文进行时 #
5783次浏览 80人参与
# 嵌入式岗知多少 #
57950次浏览 548人参与
# 联影医疗求职进展汇总 #
5111次浏览 24人参与
# 我来点评面试官 #
15170次浏览 109人参与
# 面对逼签的应对技巧 #
6008次浏览 31人参与
# 今年秋招是回暖还是遇冷 #
29016次浏览 182人参与
# 扒一扒那些奇葩实习经历 #
125880次浏览 1097人参与
# 机械人与华为的爱恨情仇 #
136507次浏览 1011人参与
# 三一集团提前批进度交流 #
41680次浏览 229人参与
# 找实习你看重大厂光环还是业务方向 #
40808次浏览 163人参与
# 工作后,谈恋爱还和学生时代一样吗? #
41351次浏览 377人参与
# 秋招开始捡漏了吗 #
74647次浏览 536人参与
# 阿里云工作体验 #
33655次浏览 108人参与
# 找工作八股要背到什么程度? #
16729次浏览 238人参与
深信服公司福利 749人发布

查看9道真题和解析