Loading...
ivelina_popova avatar ivelina_popova 37 Точки

[Exam Problems] Java Basics - 7 January 2015 - {02} Terrorists Win

Здравейте,

Не разбирам защо Judge системата ми дава 50 точки на тази задача. С примерните input-и в условието на задачата, програмата работи правилно. Пробвах и някои други и не мога да си открия грешката.

http://pastebin.com/j7C2uY4i

 

Благодаря!

Тагове:
0
Java Advanced 08/03/2015 14:16:04
Filkolev avatar Filkolev 4482 Точки

Мъча мои домашни по ООП, та няма да мога да разгледам кода подробно и да дебъгна, но на ред 22: bomb = sum%10;

Това не трябва ли да е след като намериш вече втората вертикална черта? Малко е излишно на всяка итерация да го смяташ.

Съобрази ли, че бомбата може да излезе извън границите на масива и да ти хвърли ексепшън?

Може да се оптимизира малко алгоритъма в частта, където слагаш точките в зоната на взрива - намираш началния и крайния индекс и пускаш един цикъл вместо три. Може и външния цикъл да оптимизираш - след като намериш бомба и я взривиш може да сложиш i да е равно на най-десния елемент от радиуса на взрива, за да не циклиш излишно през точки.

1
velevatanas avatar velevatanas 85 Точки

Здрасти,

проверих ти кода и решенията. Грешките ти са на следните тестове:

тест 3      |this is gonna hurt you a lot more it's gonna hurt me|      <(T.T)> -- Ouch my ear!

тук "бомбата" започва от началото на стринга и в цикъла началната стойност на "к" става отрицателно число, а масива "line" няма отрицателни индекси както се сещаш. Това е някъде около 30-ия ред.

 

тест 4  |fake hole|C======================================================3

Същият проблем. Започва в началото и първия индекс на масива в цикъла ти търси отрицателно число.

 

тест 5  There's a bomb in my as|LOL BUTTHURT|s - literally..|sd|

Този път е в края и индекса съответно става по-голям от размера на масива ти.

 

тест 7  At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis|kok| praesentium voluptatum deleniti atque corrupti quos dolores |deamn|et quas molestias excepturi |porque|sint occaecati cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia animi, id |est laborum| et dolorum fuga. Et harum quidem rerum facilis est |et expedita distinctio. Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil imp|edit quo minus id quod maxime placeat facere possimus, omnis voluptas assumenda est, omnis dolor repellendus. Temporibus autem quibusdam et aut officiis debitis aut rerum necessitatibus saepe eveniet ut et voluptates repudiandae sint et molestiae non recusandae. Itaque earum rerum hic tenetur a sapiente delectus, ut aut reici||endis voluptatibus maiores alias consequatur aut perferendis doloribus asperiores repellat.

Тук последната "бомба" на предполедния ред е "||'', демек празна, а на твоя резултат прави доста точки.

 

 

1
07/02/2015 17:43:18
ivelina_popova avatar ivelina_popova 37 Точки

Много ви благодаря за отделеното време, сега сядам да си го оправя :)

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