这是一道略复杂的常规BFS题,但我想用DFS来解决,结果写出代码却总是主函数异常返回,不知哪里错了,检查半天也没发现,以后再看看吧。

Code

#include<iostream>
#include<cstdio>
#include<string>
#include<vector>
#include<algorithm>
#include<cstdlib>
#include<cmath> using namespace std; struct stone{int T,X,Y;};
bool cmp(stone S1,stone S2){return S1.T<S2.T;}
int M,b[305][305],m[305][305],Tmin[90005],p,tmin=99999999,obx,oby;
stone S[50005]; void dfs(int t,int no,int x,int y)
{
if(t>Tmin[p]||m[x][y]==0||x>300||y>300||t>90000-M)return;
if(obx==x&&oby==y)
{
Tmin[p]=min(Tmin[p],t);
return;
}
if(no<=M)
{
while(S[no].T<=t)
{
m[S[no].X][S[no].Y]=0;
m[max(0,S[no].X-1)][S[no].Y]=0;
m[S[no].X+1][S[no].Y]=0;
m[S[no].X][S[no].Y+1]=0;
m[S[no].X][max(0,S[no].Y-1)]=0;
no++;
}
}
/*for(int i=0;i<=10;i++)
{
for(int j=0;j<=10;j++)
{
cout<<m[i][j]<<' ';
}
cout<<endl;
}*/
if(x<300&&m[x+1][y]==1)
{
m[x][y]=0;
dfs(t+1,no,x+1,y);
m[x+1][y]=1;
}
if(y<300&&m[x][y+1]==1)
{
m[x][y]=0;
dfs(t+1,no,x,y+1);
m[x][y]=1;
}
if(x>0&&m[x-1][y]==1)
{
m[x][y]=0;
dfs(t+1,no,x-1,y);
m[x][y]=1;
}
if(y>0&&m[x][y-1]==1)
{
m[x][y]=0;
dfs(t+1,no,x,y-1);
m[x][y]=1;
}
return;
} int main()
{
cin>>M;
for(int i=1;i<=90000-M;i++) Tmin[i]=609;
for(int i=1;i<=M;i++)
{
cin>>S[i].T>>S[i].X>>S[i].Y;
b[S[i].X][S[i].Y]=1;
b[S[i].X+1][S[i].Y]=1;
b[max(0,S[i].X-1)][S[i].Y]=1;
b[S[i].X][max(0,S[i].Y-1)]=1;
b[S[i].X][S[i].Y+1]=1;
} sort(S+1,S+M+1,cmp);
for(int i=0;i<=300;i++)
for(int j=0;j<=300;j++)
{
if(i==0&&j==0)continue;
if(b[i][j]==0&&i+j<tmin)
{
for(int ii=0;ii<=300;ii++)
for(int jj=0;jj<=300;jj++)
m[ii][jj]=1;
p++;
obx=i;
oby=j;
dfs(0,1,0,0);cout<<2<<endl;
tmin=min(tmin,Tmin[p]);
}
}
if(tmin==99999999)
cout<<-1;
else
cout<<tmin;
return 0;
}

P2895(未解决)的更多相关文章

  1. C/C++编译和链接过程详解 (重定向表,导出符号表,未解决符号表)

    详解link  有 些人写C/C++(以下假定为C++)程序,对unresolved external link或者duplicated external simbol的错误信息不知所措(因为这样的错 ...

  2. 直接请求json文件爬取天眼查企业信息(未解决验证码问题)——python3实现

    几个月前...省略一堆剧情...直接请求json文件爬取企业信息未成功,在知乎提问后,得到解决,有大佬说带上全部headers和cookie是可以的,我就又去试了下,果然可以(之前自己试的时候不行,没 ...

  3. 记一次未解决的异常:java.lang.NoClassDefFoundError: net/sf/json/JSONObject

    原因:Jetty会导致这个问题,Tomcat可以正常启动   一.异常产生现象 使用json-lib转换实体类/字符串,跑单元测试没问题,但是启动jetty后调用JSONArray.fromObjec ...

  4. Ajax返回中文乱码问题(未解决)

    (未解决) 暂时使用办法:改用返回Map<String,String>形式的返回值,在ajax中获取json形式的数据.

  5. openerp学习笔记 计算字段、关联字段(7.0中非计算字段、关联字段只读时无法修改保存的问题暂未解决)

    计算字段.关联字段,对象修改时自动变更保存(当 store=True 时),当 store=False 时,默认不支持过滤和分组7.0中非计算字段.关联字段只读时无法修改保存的问题暂未解决 示例代码: ...

  6. oracle,wamp,FZ突然出现问题,求解决方案(未解决,最终系统还原)

    -----背景------- 系统:win7  64位oracle 11g(11.1)每天都用oracle.用toad for oracle .电脑固定IP.未更改任何配置信息.用了几个月,突然出现了 ...

  7. (转载) C/C++编译和链接过程详解 (重定向表,导出符号表,未解决符号表)

    转载http://blog.csdn.net/neo_ustc/article/details/9024839 有 些人写C/C++(以下假定为C++)程序,对unresolved external ...

  8. tomcat中显示本地图片①(未解决)

    <本模块文仅作为学习过程中的自我总结,有需要可参看,欢迎指导与提出建议,很多地方可能断章取义,理解不到位,虚心求学.谢谢!> 资料查阅原因:2018/7/10(做项目中显示详情页面,从数据 ...

  9. JIRA状态为任务结束,但是解决结果为未解决相关配置

    1.JIRA状态为任务结束,但是解决结果为未解决,如下图所示: 2.在工作流->界面->结果处理中进行解决结果的配置(首先确保界面配置中有“解决结果”字段). 3.点击“结果处理”,进行结 ...

  10. [未解决]Exception in thread "main" java.lang.IllegalArgumentException: offset (0) + length (8) exceed the capacity of the array: 6

    调用这个方法 是报错,未解决 binfo.setTradeAmount(Double.parseDouble(new String(result.getValue(Bytes.toBytes(fami ...

随机推荐

  1. [ABC244G] Construct Good Path

    Problem Statement You are given a simple connected undirected graph with $N$ vertices and $M$ edges. ...

  2. Redis工具类及Redis序列化

    导入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>sp ...

  3. X2加密的PcbDoc类型导出内容有误,不加密的PcbDoc导出的表格正常

    出现该类问题说明读取PcbDoc文件文件出了文件,加密类型添加tmp类型即可

  4. vulnhub - Nagini - writeup

    信息收集 基础信息 目标只开放了22和88: root@Lockly tmp/nagini » arp-scan -I eth1 -l Interface: eth1, type: EN10MB, M ...

  5. 聊聊ChatGLM中P-tuning v2的应用

    论文PDF地址:https://arxiv.org/pdf/2110.07602.pdf 转载请备注出处:https://www.cnblogs.com/zhiyong-ITNote/ P-Tunin ...

  6. 最新系统MacOs13 Ventura(M1/M2芯片) + Parallels Desktop 18(PD18史上最强虚拟机)永久使用攻略

    众神殿内,高朋满座,胜友如云,Vmware.VirtualBox.Utm等虚拟机大神群英荟萃,只见位于C位王座上的Parallels怅惘抬头,缓缓逡巡,睥睨群小,目光到处,无人敢抬头对视. 是的,如果 ...

  7. 史上最强DIY,手工制作一只会说话的机器狗

    摘要:波士顿动力的机器狗,想要么?快来跟我一起动手制作吧. 波士顿动力的机器狗了解吗? 一个会后空翻.会开门.会爬楼梯的AI. 最近,我们实验室就来了一批mini版的机器狗,虽然不会各种高难度杂技动作 ...

  8. 云原生2.0时代,华为云DevOps立体运维实践

    摘要:随着云原生2.0时代的来临,越来越多的企业及个人选择使用云原生技术来构建业务,云原生技术给业务构建.交付带了便利的同时,对运维也提出了更高的要求. 2020年12月,中国DevOps社区峰会在北 ...

  9. 【新春特辑】发压岁钱、看贺岁片、AI写春联……华为云社区给大家拜年了

    摘要:充电团聚云上见,顺便攒攒压岁钱. 春!节!倒!计!时!啦! 农历新年即将到来,热闹的过年氛围逐渐弥漫,华为云社区先给大家拜个早年,祝所有小伙伴们新春快乐,牛年大吉! 回望2020年,社区涌现了许 ...

  10. 看故事学Redis:再不懂,我怀疑你是假个开发

    摘要:还不懂Redis?看完这个故事就明白了! 本文转载自博客园社区<还不懂Redis?看完这个故事就明白了!>,作者:轩辕之风 我是Redis 你好,我是Redis,一个叫Antirez ...