蒟蒻求助,只输出-1

P3956 [NOIP2017 普及组] 棋盘

~~那也有5分(~~
by Ender_hz @ 2020-10-25 12:35:39


同问,我也只输出-1
by chenkaiwen @ 2020-10-25 14:47:36


把数据下载下来可以正常输出正确答案,但是洛谷上只输出-1
by chenkaiwen @ 2020-10-25 14:48:40


```cpp #include<bits/stdc++.h> using namespace std; int read(){ int ans = 0 , f = 1 ; char ch = getchar() ; while(ch < '0' || ch > '9' ){ if(ch == '-' ) f = -1 ; ch = getchar() ; } while(ch >= '0' &&ch <= '9' ) ans = (ans * 10) + ch - '0' , ch = getchar() ; return ans * f ; } int fx1[4]={1,-1,0,0},fx2[4]={0,0,1,-1}; int a[1000][1000]; bool f[1000][1000]; int n,m; bool IF(int x,int y){ if(x==n&&y==n){ return 1; } // cout<<bool(x!=n+1)<<bool(y!=n+1)<<bool(x!=0)<<bool(y!=0)<<bool(!f[x][y])<<endl; return x!=n+1&&y!=n+1&&x!=0&&y!=0&&!f[x][y]; } int dfs(int x,int y,int q){ if(x==n&&y==n){ // cout<<"OK"<<endl; return 0; } f[x][y]=1; int ans=0x7ffffff; for(int i=0;i<4;i++){ bool PD=IF(x+fx1[i],y+fx2[i]); // cout<<x+fx1[i]<<" "<<y+fx2[i]<<" "<<f[x+fx1[i]][y+fx2[i]]<<" "<<q<<endl; if(a[x+fx1[i]][y+fx2[i]]){ // cout<<"A"<<endl; if(PD){ if(a[x][y]==a[x+fx1[i]][y+fx2[i]]) ans=min(ans,dfs(x+fx1[i],y+fx2[i],0)); else ans=min(ans,dfs(x+fx1[i],y+fx2[i],0)); } }else if(q==0){ // cout<<"B"<<endl; if(PD){ a[x+fx1[i]][y+fx2[i]]=a[x][y]; ans=min(ans,dfs(x+fx1[i],y+fx2[i],1)+2); a[x+fx1[i]][y+fx2[i]]=((a[x][y]+1)%2)+1; ans=min(ans,dfs(x+fx1[i],y+fx2[i],1)+3); a[x+fx1[i]][y+fx2[i]]=0; } } } // cout<<"ans "<<x<<" "<<y<<" "<<ans<<endl; return ans; } int main(){ cin>>n>>m; for(int i=0;i<m;i++){ a[read()][read()]=read()+1; } int ans=dfs(1,1,0); cout<<ans<<endl; return 0; } ```
by chenkaiwen @ 2020-10-25 14:49:47


$x2 = x + fx[i]$ $y2 = y + fy[i]$ 它们不香吗?
by 蒟蒻·巨弱 @ 2020-10-25 14:50:20


![](https://cdn.luogu.com.cn/upload/image_hosting/vu28ci71.png) ![](https://cdn.luogu.com.cn/upload/image_hosting/wtbr25x3.png)
by chenkaiwen @ 2020-10-25 14:52:31


@[蒟蒻·巨弱](/user/309896) emmmm,好像没有什么区别吧
by chenkaiwen @ 2020-10-25 14:53:14


@[chenkaiwen](/user/107527) 强迫症(doge)
by 蒟蒻·巨弱 @ 2020-10-25 15:49:09


@[chenkaiwen](/user/107527) 读入不要用 `a[read ()][read ()]=read ()+1`
by 做梦想Peach @ 2020-11-01 14:58:29


@[做梦想Peach](/user/239030) 太感谢了
by chenkaiwen @ 2020-11-01 18:34:47


| 下一页