Loading...
LoKSET avatar LoKSET 160 Точки

[Homework]AdvancedC# - Arrays, Lists, etc.. Problem 9. Stuck numbers

Пуснах задачата в Джъджа, но ми гърми на пети тест. Сравних с данните, които трябва да се получат и единствената разлика, която открих е че две от стойностите са с разменени места при мен. По условие реда им не е важен, това така ли е наистина?

Ако я реша с for цикли може и да се получи не знам, но след като разбрах че не може лесно да итерираш foreach цикли, в които променяш колекцията, се заинатих да си я направя както искам, така че не се възмущавайте от подхода :)

http://pastebin.com/R6uPsXTw

Тагове:
0
C# Advanced 19/05/2015 12:56:00
mishomihaylov avatar mishomihaylov 67 Точки

Здравейте!
За да спестя нова тема на въпрос върху същата задача бих желал да помоля за малко помощ тук. Програмата ми гърми на 5ти тест както на колегата, но немога да разбера какъв е проблема. Също при последните 3 теста превишавам позволеното време. Предледах няколко пъти авторското решение. Методиката е същата при мен, но резултатите различни. Ще се радвам да ми помогнете да разбера къде греша. Ето моето решение:
 

http://pastebin.com/uLZbHD9n

0
12/10/2015 06:36:27
yanchev_i avatar yanchev_i 16 Точки

Здравей, за да решиш проблема с времето е по-удачно да използваш StringBuilder вместо да конкатенираш стрингове.

Конкретно за 5ти тест, в края на подавания стринг има един whitespace, който бърка работата. При сплитването трябва да използваш:

string[] numbers = input.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries).ToArray();

 

1
12/10/2015 07:49:13
LoKSET avatar LoKSET 160 Точки

Няма нужда чак пък от стрингбилдър - конкатенират се 2-3 неща, които после ще трябва да се чистят.

Проблема ти е, че изобщо парсваш числата и после им викаш tostring, дръж си ги като стрингове и времето ще мине. За интервала вече каза колегата, може и да се тримне.

Примерно http://pastebin.com/eJ4dcXgY

1
12/10/2015 08:30:59
mishomihaylov avatar mishomihaylov 67 Точки

Да, явно наистина няма нужда да парсвам числата. Благодаря ви за помоща!

ПС: А от къде се появява този whitespace на пети тест?

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