You will be given the heights of N walls from left to right. Mario is currently standing on the first wall. He has to jump to the adjacent walls one after another until he reaches the last one. That means, he will make (N −1) jumps. A high jump is one where Mario has to jump to a taller wall, and similarly, a low jump is one where Mario has to jump to a shorter wall. Can you find out the total number of high jumps and low jumps Mario has to make?
Input
The first line of input is an integer T (T < 30) that indicates the number of test cases. Each case starts with an integer N (0 < N < 50) that determines the number of walls. The next line gives the height of the N walls from left to right. Each height is a positive integer not exceeding 10.
Output
For each case, output the case number followed by 2 integers, total high jumps and total low jumps, respectively. Look at the sample for exact format.
Sample Input
3
8
1 4 2 2 3 5 3 4
1
9
5
1 2 3 4 5
Samples Output
Case 1: 4 2
Case 2: 0 0
Case 3: 4 0
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | import java.util.*; import java.lang.*; import java.math.*; public class Q10{ public static void main(String[] args){ Scanner scan = new Scanner(System.in); String line = System.getProperty("line.separator"); scan.useDelimiter(line); int cases = scan.nextInt(); for(int x=0;x<cases;x++){ int getj = scan.nextInt(); String[] get = scan.next().split(" "); int counth=0,countl=0; for(int y=0;y<getj-1;y++){ if(Integer.parseInt(get[y])<Integer.parseInt(get[y+1])) counth++; else if(Integer.parseInt(get[y])>Integer.parseInt(get[y+1])) countl++; } System.out.println("Case "+(x+1)+": "+counth+" "+countl); } } } |
No comments:
Post a Comment