Algorithm codechef解决方案

Algorithm codechef解决方案,algorithm,Algorithm,我目前在codechef工作 即使试了很多次,我还是得到了错误的答案。因为这是一种竞争,我不想要任何直接的答案,但我只是想知道我的代码出了什么问题 #include <iostream> using namespace std; int T[260][260]; int num; int main() { int i,j,I,ii,jj,o,c,b; int S,G,D; long long int M; int dist[260][260]; int res1,res2,res3

我目前在codechef工作

即使试了很多次,我还是得到了错误的答案。因为这是一种竞争,我不想要任何直接的答案,但我只是想知道我的代码出了什么问题

#include <iostream>

using namespace std;
int T[260][260];
int num;
int main()
{
int i,j,I,ii,jj,o,c,b;
int S,G,D;
long long int M;
int dist[260][260];
int res1,res2,res3;
int tdis,mdis,dis;
cin>>num;
for(i=0;i<num;i++)
        {
                for(j=0;j<num;j++)
                {
                cin>>T[i][j];
                }
        }

 for (ii = 0; ii < num; ii++)
        for (jj = 0; jj < num; jj++)
            dist[ii][jj] = T[ii][jj];



  for (o = 0; o < num; o++)
    {

        for (b = 0; b < num; b++)
        {

            for (c = 0; c < num; c++)
            {

                if (dist[b][o] + dist[o][b] < dist[b][c])
                    dist[b][c] = dist[b][o] + dist[o][c];
            }
        }
    }          
cin>>M;
for(I=0;I<M;I++)
{
cin>>S;
cin>>G;
cin>>D;
res1=dist[S][G];
res2=dist[G][D];
tdis=res1+res2;
mdis=dist[S][D];
dis=tdis-mdis;
if(dis<0)
cout<<tdis<<" "<<0<<"\n";
else
cout<<tdis<<" "<<dis<<"\n";
}
return 0;
}

事实上,我是新来的,任何指导都会有帮助

实际上,当检查dist[b][o]+dist[o][c]是否为

你已经写了dist[b][o]+dist[o][b]