Loading...
icowwww avatar icowwww 2779 Точки
Best Answer

имаш 2 грешки в тая задача едната е в sumPairs, другата е в Shift

грешката в Shift e когато листа ти е само от 1 число:

nums.Length == 1

shift 2

Какво става ако се опиташ да изтриеш първото число 2 пъти? Гърми защото след второто завъртане няма какво да трие.

Грешката в sumPairs е , че първо правиш тези който трябва да се изтрият -1 и след това триеш всички отрицателни. Не знам как ти хрумна, но да триеш всички отрицателни може да включи и други числа. Поне да беше nums.RemoveAll(x => x ==-1);

или да си беше измислил някакво произволно число(не че все някога няма да изгърми). Най-лесно можеш да го оправиш ако направиш да трие това число още в цикъла и само да направиш цикъла да върти с едно по малко без да пропуска числото което идва с едно напред:

for (int i = 0; i < nums.Count - 1; i += 2)
            {
                nums[i] += nums[i + 1];
                
                nums.RemoveAt(i+1);
                i = i - 1;
            }

0
16/06/2017 21:57:32
ison4eto avatar ison4eto 40 Точки

Благодаря за коментара. Промених това и сега работи за 90/100:

int positions = int.Parse(command[1]);
if (positions > nums.Count)
 {
   positions %= nums.Count;
 }

Какво се случва когато shift-a е равен на броя на елементите? Нищо ли не трябва да се мести?

0
ison4eto avatar ison4eto 40 Точки

Благодаря!

0
DJColdBrain avatar DJColdBrain 9 Точки

Здравей колега. 

Сега ще ти кажа къде гърми. 

То ти гърми тук case "sumPairs":

Пробвай да направиш проверка с нечетен брой числа. За да го оправиш първо направи проверка и последното което няма другарче просто го добави.

0
ison4eto avatar ison4eto 40 Точки

Проблема не е в това.

Пробвах следния тест и изхода е какъвто се очаква.

вход:
1 2 3 4 5
sumPairs
print
изход:
[3, 7, 5]


 

0
spzvtbg avatar spzvtbg 581 Точки

грешките бяха в завъртането и сумирането на двоиките -  решение

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