[Programming Fundamentals Exam 12.06.2016] Problem 01.Numbers
Някой може ли да ми помогне къде ми гърми 7-ми тест. дава ми 90/100 не успях да открия грешката по време на изпита и не взех пълният брой точки от тази задача. Ето и кода
Някой може ли да ми помогне къде ми гърми 7-ми тест. дава ми 90/100 не успях да открия грешката по време на изпита и не взех пълният брой точки от тази задача. Ето и кода
if-а е грешен. Трябва да е if (finalArray.Length == 0), защото дори входният масив да има по- малко от 5 елемента той пак може да съдържа елементи, които отговарят на изискването. Дори да има само 1 такъв елемент ти трябва да го изкараш.
Алгоритъмът ти е грешен. Като за начало всеки input по-малък от 5 числа ще даде отговор "NO".
При инпут 1 2 3 4 би трябвало да покаже 3 4, при мен показва "NO" Input-a също не е нужно да е Decimal, int ili long върши работа.
Ето го и моето решение след като прочетеш инпута. Дано съм полезен.
List<int> toPrint = new List<int>();
input.Sort();
for (int i = input.Count - 1; i >= 0; i--)
{
if (input[i] > avarage)
{
toPrint.Add(input[i]);
}
}
if (toPrint.Count > 5)
{
toPrint.RemoveRange(5, toPrint.Count - 5);
}
if (!toPrint.Any())
{
Console.WriteLine("No");
}
Console.WriteLine(String.Join(" ", toPrint));
http://pastebin.com/1k1JGw0f
Варианта ми с LINQ просто защото не се сетих за друг вариант .
Ето моето решение:
http://pastebin.com/CH9ivXid
Даде ми 100 точки в Judge. Дано ти е полезно,
Някой може ли да ми каже как решихте 3 задача за FootballStandings.
На 4 задача Trifon's Quest ми дава 90 точки. Гърми ми предпоследния тест. Така и не можах да го оправя това.
Някой може ли да каже къде бъркам.
http://pastebin.com/x01h8Evs
Не намирам грешката, но като за начало можеш да опростиш алгоритъма за обхождане на матрицата. Използвай това, че ако currentCol % 2 == 0 обхождаш редовете от първия до последния, а в противен случай от последния към първия. С други думи четните колони ги обхождаш от горе на долу, а нечетните от долу на горе.
Ето примерно решение: http://pastebin.com/FmfN83CJ
Не е оптимален заради повторението на switch - a, но лесно се изнася в метод.
Проблема е в IF-а, с който ограничаваш условието на задачата и не позволяваш редица с 2 и повече (до 5) елемента също да бъде обработена и да даде изходен резултат.
Но дори с тази проверка, предложена от колегата " if (finalArray.Length == 0) " няма как да заработи, защото при обявяването на finalArray с VAR - няма как да се ползва .Length понеже променливата може и да не бъде масив и компилатора не го приема.
Ето и моят код колега, ако ти помогне за още един поглед: http://pastebin.com/pUyHcEpz