Loading...
peter1998 avatar peter1998 5 Точки

C# Advanced Exam - 14 October 2018 Помощ за задача с масиви c# Fundamentals

Здравейте Колеги , може ли малко насока как да довърша задача с матрици от изпита C# Advanced Exam - 14 October 2018

ето моят код : 03. Miner https://pastebin.com/fuF0S25C
тука е условието https://judge.softuni.bg/Contests/Practice/Index/1289#2 C# Advanced Exam - 14 October 2018

Тагове:
0
C# Advanced
TeMePyT avatar TeMePyT 142 Точки

https://pastebin.com/spWWLw5V Това е което сътворих аз на ипита, не съм си играл да променям матрицата, никъде не те карат да я принтираш после, така че няма никакво значение. Извадих си локациите на въглищата и на е-то, и после само правех проверки. Ако настъпя е-то -  Game over, ако има въглища на мястото, махам ги от списъка. След проверка ако в списъка с въглища няма нищо, значи съм събрал всичко, ако пък няма команди принтирам колко са останали.

0
12/01/2019 12:52:21
peter1998 avatar peter1998 5 Точки

хубаво решение , но какво е Tuple и Hash Set 

0
TeMePyT avatar TeMePyT 142 Точки

Ами учат се по-нататък по принцип. В tuple по принцип можеш да държиш от 1 до 8 типа данни, tuple<T1> - tuple<T1, T2, T3,...T8>. Като не е задължително да са един тип. Примерно можеш да имаш tuple<string, int, bool>. За задачата съм ползвал tuple<int, int> за да пазя координатите на въглищата(въобще при матрици това мисля е най-удобния вариант да пазиш координати). https://www.dotnetperls.com/tuple тук е обяснено. Hashset от друга страна е нещо като лист, но няма подреждане, не се знае кое къде е(в случая не ми пука кое къде е, интересува ме има ли го вътре). Също така може да съдържа само уникални елементи, без повторения. Много бърз е. Добър избор за съхранение на координатите на въглищата(няма повторение на tuple<int, int>, в които ги пазя). И така, вадя координатите на въглищата в хешсета с тупъли, после в самата програма при всеки ход си правя един нов тупъл с настоящите координати, проверявам дали хешсета с координатите на въглищата съдържа такъв тупъл, и ако го има го махам от хешсета(събрал съм въглищата на тези координати). Не знам до колко добре го обясних, из нета можеш да намериш информация и за 2-те. Или в стара инстанция на C# Advanced.

0
TeodorStefanovPld avatar TeodorStefanovPld 1274 Точки

Те промениха tuples как работят препоръчват вече value tuples да си полвват.

И че се решава и по друг начин е ок. Но но почти всяко интервю има матрица или някакви многоизмерни масиви,та колегата да се помъчи малко. Не  е толкова сложно,а ще му е полезно за после.

1
TeMePyT avatar TeMePyT 142 Точки

Така е, на мен лично курсовете за алгоритми ми помогнаха да схвана матриците. Дори самото решение с tuple и хешсет, което ползвах, е от една от лекциите. https://pastebin.com/n9g1nG0b ето това беше задачата(използваха го за да запазят пътя, но след като изгледах лекцията за зачетох за тупъл и хешсета). Относно промените-нямах си на идея, в момента съм на вълна бази данни и SQL :) Ще трябва пак да чета явно.

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