задача Increasing elements/Exam preparation part I/
Здравейте,
някой може ли да каже къде греша.
Условието на задачата е:
Дадена е редица от n числа: a1,a2,…,an. Да се пресметне дължината на най-дългата нарастваща поредица от последователни елементи в редицата от числа.
Вход
Входните данни се четат от конзолата. На първия ред стои цяло число n (0 ≤ n ≤ 1000). На
Следващите n реда стоят n цели числа в интервала [-1000…1000]: a1, a2, …, an.
Изход
На конзолата трябва да се отпечата едно число –дължината на най-дългатa нарастваща редица.
Моето решение е:
package ExamPreparationI; import java.util.Scanner; public class IncreasingElements { public static void main(String[] args) { Scanner scan = new Scanner(System.in); int n = Integer.parseInt(scan.nextLine()); int oldA = Integer.parseInt(scan.nextLine()); int currentCount = 1; int longestCount = 1; for (int i = 0; i < n-1; i++) { int a = Integer.parseInt(scan.nextLine()); if (oldA < a) { currentCount++; oldA = a; } else { oldA = a; if (longestCount < currentCount) { longestCount = currentCount; currentCount = 1; } else { currentCount = 1; } } } System.out.println(Math.max(currentCount, longestCount)); } }
При тества в Judge ми дава 91 точки и една грешка в тест№1(Runtime error).
https://judge.softuni.bg/Contests/Practice/Index/661#7
P.S.отпечатвам Math.max(currentCount, longestCount) т.к. ако редицата е изцяло нарастваща най-голямата дължина ще се натрупа в currentCount, a longestCount ще си остане 1.
ок много благодаря