Дистанционная подготовка: help
help
от Илья Карпенко - Вторник 29 Январь 2019, 00:49
5. Дейкстра
  помогите, пожалуйста, с 9, 10 тестом
пытался решить 3 дня((

#include
#include
#include

int Long (int M[] , int a , int s, int e,int l,int*c,int b,int z[] ){

if( s == e){ // если я на той строке, которая мне нужна
if ( l *c = l; }
return 0 ;}
// а - количество вершин в графе
for( int k = 0,u = 0 ,m = 0; k != a ; k += 1){

for (int j = 0 ; j != a ; j += 1){ // проверка на допустимость
if ( k == z[j] || k == s ){
goto stop ; }}

u = s ;

z[b] = s ;

m = M[s * a + k] ;

if ( m continue ; }

l += m ; // хранение длины пути
s = k ;
Long(M,a,s,e,l,c,b + 1 ,z);

z[b] = -666 ;

l -= m ;
s = u ;
stop :
5 + 3 ;
}
}


int main (void) {

int amount,start,end,o = 9999;
scanf("%d %d %d" ,&amount,&start,&end);
int M[amount][amount], z[amount] ;

for (int i=0 ; i != amount ; i++){
for (int j=0 ; j != amount ; j++){
scanf("%d",&M[i][j]); } // заполнение матрицы
z[i] = -666 ; } // левые значение
int *c = &o ;
Long(M,amount,start - 1,end - 1,0,c,0,z);


if ( *c == 9999){
*c = -1 ; }


printf("%d",*c);
}

Re: help
от Максим Буянов - Вторник 5 Февраль 2019, 00:53
  #include
#include
#include
#include
#include
#include
#include
#include
using namespace std;

long long gcd(long long a, long long b)
{
if (a swap(a, b);
}

if (b == 0) {
return a;
}

return gcd(b, a % b);

}
int main()
{
long long a, b;
cin >> a >> b;
cout
Re: help
от Илья Карпенко - Понедельник 18 Февраль 2019, 15:17
  ?