Я решил 1-й из трех этапов всепоглощающего соревнования (теперь оно закончено)

Я решил 1-й из трех этапов всепоглощающего соревнования (теперь оно закончено), но мне интересно знать, есть ли какой-нибудь более простой алгоритм сложности или нет
7 9

5 7

4 2

3 6

2 3

1 7

6 2

4 6

1 5

3 4

int main()
{
ifstream in("domes.in");
ofstream out("domes.out");

int orio,z;
in>>orio;
in>>z;
int domes[orio];

for(int i=0;i<orio;i++){domes[i]=0;}
int k;
for(int i=0;i<2*z;i++)
{
in>>k;
domes[k-1]++;
}

int c=0;

for(int i=0;i<orio;i++)
{
if(domes[i]<2)
c++;
}
out<<c;
return 0;
}

речь идет о некоторых местах (представленных числами), первые два числа — это количество мест (orio) и количество совпадений (z). Места как-то «связаны» (бессмысленно). Вы должны найти, сколько мест имеют менее 2 подключений, и на выходе (в данном случае c) будет указано количество мест, в которых менее 2 подключений. k — это переменная, используемая временно для вставки каждого числа и плюс время его «просмотра». Если это замечено, это означает, что это связано с другим местом. Я не думаю, что есть более простое решение, но некоторым из программ моего партнера требовалось меньше времени для запуска, и это беспокоило меня

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector