Софтуерно Инженерство
Loading...
+ Нов въпрос
TatianaIndzhova avatar TatianaIndzhova 6 Точки

Java Advanced Exercises 7. Crossfire

Здравейте! Моля, помогнете ми да открия, защо моя код минава само с 40/100.

Принципа на решаването е с лист от листове, веднага проверявам дали координатите на "епицентъра"са "вътре", след това 

1. махам ако съществуват по вертикала горните и долните - без "центъра";

2. махам наведнъж всичките по хоризонтала - ако съществуват - със "центъра" - със съблист;

3. махам празните листове от матрицата;

Разгледала съм доста кодове на колегите, затова не искам да ми пращате вашите решения, искам да открием какъв е проблема на моето. Тествала съм доста с измислени от мен тестове, минава перфектно, обаче явно нещо изпускам... засега не откривам какво точно :).

това ми е кода: https://pastebin.com/cuCahPgX?fbclid=IwAR1_7sIhNM1vi-lJhydCmd1NNe3W8Pr2718m7FWzKZ59VeE4j1mrXaWCnuM

Благодаря предварително!

 

Тагове:
0
Java Advanced 28/05/2019 11:54:27
SophYO avatar SophYO 88 Точки

Здрасти!

има едно условие, което си пропуснала да хванеш. Това е 

  • The given rows and columns will be valid integers in the range [-2^31 + 1, 2^31 - 1]

т.е. целевия координат може да е извън матрицата, но вертикали или хоризонтали излизащи от него може да унищожат клетки от нея в зависимост от големината на радиуса. А може да е и върху вече унищонa такава.

 

Хубав ден и успех! :)

 

0
TatianaIndzhova avatar TatianaIndzhova 6 Точки

ясно, и аз това предположих, но не бях сигурна. Благодаря!

0