Loading...

Във форума е въведено ограничение, което позволява на потребителите единствено да разглеждат публикуваните въпроси.

borislav9212 avatar borislav9212 745 Точки

Spiral Matrix

Здравейте,

Може ли малко помощ. Задачата я няма в Judge. Предполагам и други колеги са я решавали. Може да споделите и вашите решения ако са по различни от моето. При мен на 47 ред ми дава Exception, там мисля че е ми е проблема, това  е кода.

Тагове:
0
Programming Basics
sider.topalov avatar sider.topalov 38 Точки
Best Answer

Не съм сигурен дали точно това търсиш но може да хвърлиш едно око над това решение. Ако искаш може да ме добавиш във FB и там може да си помагаме взаимно. А до колкото до решението ти мога да кажа че проблема ти идва от първите "if"-ове в началото тръгва правилно върви наляво след това слиза до долу и тръгва на дясно до тук добре но след това да речем сме въвели числото n = 5 когато стигне клетка matrix[4,0] = value -> "13"  се очаква да тръгне на горе към клетка matrix[3,0] и да запише стойност 14, но всъщност то отива на клетка matrix[4,1] с текуща стойност(12) и я презаписва със стойност(14) ->matrix[4,2] = value(15) -> ... ->matrix[4,4] презаписва текущата стойност(9) със стойност(17) и при следващото завъртане на цикъла и промените в първите if-ове стига до индех matrix[4,5] и ти хвърля Exception IndexOutOfRange. Надявам се разбираш мисълта ми. Успех!

2
14/05/2016 21:08:19
borislav9212 avatar borislav9212 745 Точки

Благодаря ви за помощта, намерих си грешката: на ред 41 съм написал if ((direction == "up") && (row > 0 || matrix[row, col] != 0)) , а то трябва да е if ((direction == "up") && (row < 0 || matrix[row, col] != 0)). row > 0 а трябва да е row < 0. Ето го кода след промените, вярно написан Spiral Matrix

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

0
14/05/2016 21:29:14
msmilkoff avatar msmilkoff 338 Точки

Задачата я няма в Judge. 

Не е ли тази? Ако не, то поне решението и много ще ти помогне.

0
14/05/2016 20:03:27
borislav9212 avatar borislav9212 745 Точки

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

Благодаря

0
kaloyannikov avatar kaloyannikov 531 Точки

http://pastebin.com/6ZUetAZB това е на Java , но тука само цикли има така , че предполагам се разбира .

1
ralitsa_d avatar ralitsa_d 171 Точки

Здравей, ето едно решение и от мен. Първоначално и аз бях тръгнала в тази посока - да определя посоката на движение и според нея да увеилчавам или намалявам стойностите на row и col, но после стигнах до варианта с по-малко проверки.

 

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