Loading...
Kristianchooy avatar Kristianchooy 59 Точки

6. Max Sequence Of Equal Elements[Arrays - Exercises]

Задачата е от тук : Arrays - Exercises ,6-та задача

Срещам проблем при намиране на най многото повтарящи се числа  , досетих се как да ги откривам повтарящите се числа , но не мога да измсиля в случай че има няколко повтарящи числа ( например 555 , 3333 , 77777777) как да запиша КОИ СА НАЙ-МНОГО .. хелп

 

код - http://pastebin.com/Dqca65Gw

Тагове:
0
Programming Fundamentals
VladimirAnaniev avatar VladimirAnaniev 54 Точки

Можеш да използваш променливи maxCount и maxNumber в които да пазиш дължината и стойността на най-дългата поредица.

Когато текущото число не съвпада със следващото, проверчваш дали тази поредица е по-дълга от миналата, заместваш и нулираш counter-a.

1
YavorSpassov+deleted! avatar YavorSpassov+deleted! 133 Точки

Можеш да прегледаш моето решение.

Сравняваш maxCount с count и ако count е по-голямо, прехвърляш текущата му стойност в maxCount. Освен това, ще ти трябва и да изчислиш позицията, от която да принтираш най-дългата поредица повтарящи се числа.

if (maxCount < count)
                    {
                        maxCount = count;
                        position = i - count + 1;
                    }

 

0
30/07/2016 01:29:50
borislav9212 avatar borislav9212 745 Точки

Инициализирай си две променливи: count и maxcount и с един if им правиш една правиш една проверка ->

               if (count > maxcount)
                {
                    maxcount = count;
                    maxnumbers = numbers[pos];
                }  

Аз използвах и while цикъл. Ето целия ми код.

 

0
Kristianchooy avatar Kristianchooy 59 Точки

http://pastebin.com/YjFbi4SJ - ето този код най много ми допадна , само не разбирам последният for -цикъл как работи , 

for (int i = position + 1; i <= position + maxCounter + 1; i++)
            {
                Console.Write(numbers[i] + " ");
            }

 

-1
EmanuilNikolov avatar EmanuilNikolov 33 Точки

Ами до колкото го схващам - отново се обхожда масива и се търсят / извеждат елементите на съотвената позиция, които горе са регистрирани като повтарящи се.

0
TeodorStefanovPld avatar TeodorStefanovPld 1274 Точки

обхожда само частта от масива в които е  поредицата и го изписва,хитро е вместо да ги запази в лист е изпозлвал само масиви. Реално в кода започва от позицията където започва поредицата от числа int i = position + 1 ето тук и после върти до края на поредицата ; i <= position + maxCounter + 1. вместо да обикаля целия масив и тн. тои има началото и края в position и max counter и го използва.

0
27/05/2018 21:28:34
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.