Magic Strings Time Out
Здравейте колеги,
Пускам за тестове задачата Magic Strings на C# и се дъня с времето. От 16 теста 13 ми излизът извън времевия лимит. Четох във форума, че е имало проблем с тайминга при джава и допускам, че може да съществува същия и при С#. Или пък моето решение да е прекалено тежко.
Тук можете да го погледнете:
http://pastebin.com/sCnvmfi3
Ползвам осем цикъл с по четири елемента един в друг. Това предполага над 1000 комбинации, не знам това много ли е. За проверките използвам два временни масива и лист от стрингове, който после сортирам. Но доколкото знам тези елементи не са натоварващи. Необходимо ли е да оптимизирам програмата си и как може да стане?
Благодаря ти за отговора. Въведох лимит (Сборът между първите четири числа - diff) да бъде между 4 и 20 като абсолютна стойност. Така орязах голяма част от допълнителното циклене, но таймингът не мръдна дори малко. Явно нещо друго ми спъва програмата и я прави бавна. Но не знам какво - масиви, листове?