Задача от Java Basics Exam 3 September 2014
Здравейте колеги,
Опитвам се да реша 3-та задача от въпросния изпит, но ми гърми последния тест. Някой има ли идея къде бъркам?
Здравейте колеги,
Опитвам се да реша 3-та задача от въпросния изпит, но ми гърми последния тест. Някой има ли идея къде бъркам?
Aко само последният тест гърми, смени regex-a. При твоето решение - няма нужда да използваш патерн и по него да сравняваш, а само split("[^0-9-]")
Опитах и така, но пак гърми последния тест. Може ли да има грешка в метода isPrime?
Възможно е да не ти чете правилно в някой момент. Тестът гърми ли или ти дава грешка при компилацията?
Методът може да се съкрати: във for дай i<Math.sqrt(num)+1. Ако не е prime, то числото ще се дели поне на едно друго число (к), което е по-голямо или равно на 2 и по-малко от Math.sqrt(num)+1
Само начина на четене от козолата, може да не се харесва на judge
Гърми. Ако замениш метода isPrime с тоя: http://pastebin.com/9nztBE1g, гърми трети тест, а другия се оправя.
Като сложа в иф-а Math.sqrt(num)+1, гърмят трети и десети
Дай на метода се изпълнява, когато числото, което му подаваш, е по-голямо от 2. А в main метода, му задай да включва 2 в primeNumbers, ако се срещне в input-a.
т.е. всички числа по-малки от две ги забрани;
2 го вкарваш, ако го има в input-a;
всичко останало го проверяваш с метода си;
Ако не се получи, смени си четенето на input-a:
String[] input = scanner.nextLine().split("[^0-9-]");
и после когато четеш от input[], трябва да : if(!input[i].equals("")){....}