 Решения задач acmp.ru        Воскресенье, 20.09.2020, 19:37 Приветствую Вас Гость | RSS
 Меню сайта Категории раздела
 Pascal  C++ Поиск Мини-чат
 --15 сек30 сек1 мин2 мин   200  Легкий заработок! Статистика  Онлайн всего: 1 Гостей: 1 Пользователей: 0 Форма входа    Главная » Файлы » C++

0185 Скачки

### Скачать файл можно после просмотра рекламы:

05.06.2012, 02:55
#include <stdio.h>
#include <memory.h>

static unsigned short int n;
static unsigned short int ** matrix;
static bool * used;

void Check ( unsigned short int cn )
{
for (int i = 0; i<n; i++)
{
if ( ( matrix [cn][i] == 1 ) && ( used [i] == false ) )
{
used [i] = true ;
Check ( i ) ;
}
}
}

int main()
{
FILE * f = fopen("input.txt", "r");
bool result = true;
unsigned int k;
unsigned int m, b;
fscanf(f, "%d %d", &n, &k);

used = new bool [n];
memset ( used, NULL, sizeof(bool) * n);
matrix = new unsigned short int * [n] ;
for (int i = 0; i<n; i++)
{
matrix [i] = new unsigned short int [n];
memset ( matrix [i], NULL, sizeof(unsigned short int) * n );
}

do
{
fscanf (f, "%d %d", &m, &b);
if (m != 0) matrix [m-1] [b-1] = 1;
}
while ( m );
fclose(f);
used [k-1] = true;
Check (k-1);

for (int i = 0; i<n; i++)
if ( used [i] == false)
result = false;

f = fopen( "output.txt", "wt" );

if (result)
fprintf(f, "Yes");
else
fprintf(f, "No");

fclose(f);

return 0;
}
Категория: C++ | Добавил: shum
Просмотров: 1645 | Загрузок: 0
 Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]   Это интересно! Copyright MyCorp © 2020 