Предмет: Информатика, автор: nrkkfgh

решите задачу по программированию пожалуйста.На языке c++. Срочно надо.Даю все баллы

Приложения:

Ответы

Автор ответа: Browze
1

#include <iostream>

#include <vector>


int main()

{

   std::size_t N;

   unsigned short int result{0u}, max{0u};

   std::cin >> N;


   std::vector<unsigned short int> arr(N);


   for(auto& i : arr)

       std::cin >> i;

   for(auto i = 0u; i < N-1; i++)

   {

       if(arr[i] == arr[i+1])

       {

           result++;

           if(result != 0 && result > max)

           {

               max = result;

           }

       }

       else result = 0u;

   }

   std::cout << max+1 << std::endl;

   for(auto& i : arr)

       std::cout << i << " ";

   std::cout << std::endl;

   return 0;

}


Приложения:

Browze: Наивный.
DigitalAnnihilator: Наивный?) Ну твой код некомпилируемая лажа)
Browze: Вот это контраргумент, конечно..В общем, с тобой все ясно стало
DigitalAnnihilator: В смысле аргумент? Факт тот, что код не работает. Нерабочий код = не верный ответ. Когда научишься писать хотя бы компилябельный код, тогда и поговорим об аргументах)
Browze: Как первое может мешать второму?)
DigitalAnnihilator: Если ты не можешь написать хотя бы кампилируемый код, как вообще можно говорить о чем-то с тобой? Причем ни единого аргумента в ответ тому что я написал (:
Browze: И, конечно, не ответ. Вокруг да около ходишь. Ладно, удачи тебе. Не забудь давать советы тем, кто у тебя их не просил!
DigitalAnnihilator: Не забуду, нужно же что бы тут были только хорошие ответы :)
Browze: Ага
Автор ответа: igorShap
2

#include <iostream>


using namespace std;


int main() {

        short n, maxl = 0, l = 0;

        short * a;


        cin >> n;

        if (n < 0)

                 return 1;

        else  

                 a = new short[n];


        for (short i = 0; i < n; i++)

                 cin >> a[i];


        for (short i = 0; i < n; i++) {

                 if (l == 0)

                          l++;

                 else if (a[i - 1] == a[i])

                          l++;

                 else if (maxl < l) {

                          maxl = l;

                          l = 1;

                 }

                 else l = 1;

        }


        if (maxl < l)

                 maxl = l;


        cout << maxl << endl;

        for (short i = 0; i < n; i++)

               cout << a[i] << " ";


delete[] a;

       return 0;

}


DigitalAnnihilator: - Exception кидается если он установлен:
It throws an exception of member type failure if the resulting error state flag is not goodbit and member exceptions was set to throw for that state.
По простому, как минимум в ситуации если преобразовать ввод данных не получилось к необходимому значению будет брошен exception.
DigitalAnnihilator: Стандарт не гарантирует безопасного преобразования любых данных к int к примеру, так что делать:
int a;
std::cin >> a;
НЕЛЬЗЯ и НЕБЕЗОПАСНО
Если вы пишете нормальный код, а не просто на коленке.
DigitalAnnihilator: 5. Code-Style. Дело оно личное - какой выбрать, и какие корректировки внести. НО, когда код нечитабельный от слова совсем - это уже другой вопрос. Вы не найдете ни одного codestyle где бы было написано что к примеру можно писать конструкцию if else ... else if и произвольно в одном блоке ставить скобки, а в другом нет.
По тому что это не читабельно, некрасиво и попросту опасно для расширения.
DigitalAnnihilator: Indentuum, будьте любезны, не лезьте в тему в которой ничего не понимаете, вводите в заблуждение людей.
Indentuum: Видимо не алло, да? Я сказал в СП. Тут важнее какой алгоритм и как будет реализован, а не "огромная разница" между постфиксным и префиксным инкрементами.
DigitalAnnihilator: Ты не прав, задачу нужно написать на C++ а то что я перечислил является важными вещами в языке о на котором ты пишешь. Если ты не знаешь их и не умеешь в язык. То не пиши на нем. А если знаешь и умеешь, зачем писать заведомо некорректно?
DigitalAnnihilator: У тебя только по поводу формы инкременты вопросы?
Indentuum: Понятно, не понимаешь...
DigitalAnnihilator: Ты просто C++ не знаешь вот и все) Знал бы, бред такой не писал)
DigitalAnnihilator: К слову, аргументированно ты разговаривать не умеешь как я погляжу)
Похожие вопросы
Предмет: Физика, автор: artemvatag0