Информатика! решите задачу на с++.С сайта информатикс , условие и моё решение , постарайтесь использовать только for,while,break, Моё решение не проходит из за времени


Информатика! решите задачу на с++.С сайта информатикс , условие и моё решение , постарайтесь использ
Информатика! решите задачу на с++.С сайта информатикс , условие и моё решение , постарайтесь использ

axssis00 axssis00    3   19.01.2022 08:07    18

Ответы
Вывыия Вывыия  19.01.2022 08:10

#include <iostream>

using namespace std;

int main()

{

   int N; cin >> N;

   int list[N];

   int a = 0;

   while (a < N)

   {

       int n; cin >> n;

       list[a] = n;

       a ++;

   }

   int flag_2 = 0;

   a = 0;

   while (a < N)

   {

       int b = 0;

       int flag = 0;

       while (b < N)

       {

           if (list[a] == list[b])

           {

               flag ++;

               flag_2 ++;

           }

           b ++;

       }

       if (flag > 1) cout << list[a] << " ";

       a ++;

   }

   if (flag_2 <= N) cout << 0;

}

1) ответ выводится не списком, а просто отдельными числами через пробел

2) каждое повторяющееся число выводится несколько раз(столько, сколько встречается)

3) в конце вывода лишний пробел

Могу решить на пайтоне, если важно просто закрыть задачу. А так, судя по всему, решение только массивами требует более глубоких знаний(динамические массивы и векторы), чем есть у меня в с++. Возможно, сможете улучшить мое решение

(кинул бы в комментарии, но там ограничение на кол-во символов)

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика