蒟蒻15分代码,求救!!!

P3956 [NOIP2017 普及组] 棋盘

名字好评
by libra9z @ 2019-11-11 22:54:09


头像也好评
by libra9z @ 2019-11-11 22:54:18


。。。
by 窃·格瓦拉 @ 2019-11-11 23:03:31


代码中有个"us"请忽略
by 窃·格瓦拉 @ 2019-11-11 23:04:02


``` #include <cstdio> #include <cstring> #include <algorithm> using namespace std; #define R register const int N=105; int m,n,ans; int a[N][N]; int dx[6]={-1,1,0,0},dy[6]={0,0,-1,1}; bool f[N][N]; inline void Init(){ memset(a,-1,sizeof(a)); memset(f,0,sizeof(f)); scanf ("%d%d",&m,&n); int x,y,c; ans=99999999; for (R int i=1;i<=n;++i){ scanf("%d%d%d",&x,&y,&c); a[x][y]=c; } return; } inline void dfs(int x,int y,int coin,int color,int use){ f[x][y]=1; if (x==m&&y==m){ ans=min(ans,coin); return; } int p,q; for (R int i=0;i<4;++i){ p=x+dx[i],q=y+dy[i]; if (p<1||q<1||p>m||q>m) continue; if (f[p][q]==1) continue; if (a[x][y]!=a[p][q]&&a[p][q]!=-1){ dfs(p,q,coin+1,a[p][q],0); }else if (a[x][y]==a[p][q]&&a[p][q]!=-1){ dfs(p,q,coin,a[p][q],0); }else if (use==0&&a[p][q]==-1){ dfs(p,q,coin+2,a[x][y],1); }else if (use==1&&a[p][q]==-1){ continue; } } } inline void out(){ if (ans==99999999) printf("-1\n"); else printf("%d\n",ans); return; } int main(){ Init(); dfs(1,1,0,a[1][1],0); out(); return 0; } ```
by 窃·格瓦拉 @ 2019-11-11 23:04:31


~~快去问问蔡徐坤~~(逃
by _Fontainebleau_ @ 2019-11-11 23:05:30


@[菜♂虚♂鲲](/user/216349) thank you sir
by HeartBlock_Love @ 2019-11-11 23:07:41


@[菜♂虚♂鲲](/user/216349) 感觉不是你的码风
by HeartBlock_Love @ 2019-11-11 23:09:49


@[无可牵挂](/user/177796) 你跑过来干肾
by 窃·格瓦拉 @ 2019-11-11 23:10:08


@[菜♂虚♂鲲](/user/216349) 来干
by HeartBlock_Love @ 2019-11-11 23:11:12


| 下一页