Problem Statement
Unfortunately, tall trophies near the left side of the shelf might block the view of other trophies. A trophy is visible only if every trophy in front of it (from the viewer's perspective) is strictly shorter than it is. You wonder if rotating the shelf 180 degrees would increase the number of visible trophies.
Return a
Definition
- Class:
- TrophyShelf
- Method:
- countVisible
- Parameters:
- int[]
- Returns:
- int[]
- Method signature:
- int[] countVisible(int[] trophies)
- (be sure your method is public)
Constraints
- trophies will contain between 1 and 50 elements, inclusive.
- Each element of trophies will be between 1 and 100, inclusive.
Examples
{1,2,3,4,5}
Returns: {5, 1 }
When viewed from the left, each trophy is taller than all the trophies in front of it. However, when viewed from the right, the first trophy blocks the view of all the other trophies.
{5,5,5,5}
Returns: {1, 1 }
Since all trophies have the same height, only the first is visible when viewed from each direction.
{1,2,5,2,1}
Returns: {3, 3 }
This trophy shelf is symmetric.
{1,4,2,5,3,7,1}
Returns: {4, 2 }
{50}
Returns: {1, 1 }
{1,2}
Returns: {2, 1 }
{10,1,10}
Returns: {1, 1 }
{1,10,1}
Returns: {2, 2 }
{1,2,4,4,5,5,6,1,1,1,1}
Returns: {5, 2 }
{5,1,2,3,4,5,6}
Returns: {2, 1 }
{5,1,2,4,7}
Returns: {2, 1 }
{6,5,4,3,2,1,5}
Returns: {1, 2 }
{7,4,2,1,5}
Returns: {1, 2 }
{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,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50}
Returns: {50, 1 }
{50,49,48,47,46,45,44,43,42,41,40,39,38,37,36,35,34,33,32,31,30,29,28,27,26,25,24,23,22,21,20,19,18,17,16,15,14,13,12,11,10,9,8,7,6,5,4,3,2,1}
Returns: {1, 50 }
{1,2,3,4,7,10,2,3,4,1,2,3,4,10,1,2,3,10,10,10,11}
Returns: {7, 1 }
{1,5,5,5,5,5,10}
Returns: {3, 1 }
{10,5,5,5,1}
Returns: {1, 3 }
{10,10,1,1}
Returns: {1, 2 }
{1,1,5,1}
Returns: {2, 2 }
{31,60,67,70,69,84,17,33,42,67,63,43,47,96,81,55,34,63,69,54,15,79,28,65,12,18,19,85,33,72,90,88,10,90,58,84,18,1,68}
Returns: {6, 4 }
{23,43,67,68,26,24,98,85,13,28,31,50,7,48,36,83,19,46,18,83,24,48,89,100,3,84,100,54,70,1,64}
Returns: {6, 3 }
{17,79,81}
Returns: {3, 1 }
{11,68,42,19,60,59,70,36,70,94,56,37,69,3,68,46,47,24,40,26,65,79}
Returns: {4, 2 }
{59,9,18,18,89,53,10,86,8,98,66,17,25,53,45,34,90,65,64}
Returns: {3, 4 }
{100}
Returns: {1, 1 }
{1}
Returns: {1, 1 }
{100,100}
Returns: {1, 1 }
{1,1}
Returns: {1, 1 }
{62,4,95,77,10,55,57,40,47,55,1,98,86,81,36,21,40,73,23,97,39,86,40,29,11,94,90,45,71,96,80,73,24,94,99,53,79,28,11,15,93,82,61,92,56,23,59,26,5,57}
Returns: {4, 5 }
{86,97,59,87,51,6,79,92,41,84,36,21,74,22,26,19,57,48,45,51,94,6,9,92,69}
Returns: {2, 4 }
{60,47,37,97,4,34,33,92,18,61,67,29,58,39,1,74,52,53,8,25,8,95,52,94,16,23}
Returns: {2, 4 }
{56,37,13,96,81,81,73,42,4,65,77,8,14,42,78,62,94,95,32,90,87,3,58}
Returns: {2, 5 }
{74,21,34,37,37,41,52,42,98,50,62,8,37,76}
Returns: {2, 2 }
{90,1,45,77,30,77,51,94,13,87,53,72,12,38,100,1,96,76,18,81,20,48,75,86,36,46,31,46,36,28,54,73}
Returns: {3, 4 }
{6,80,4,17,75,60,49,46,75,71,43,87,86,100,43,67,6,27,17,18,57,59,22,76,42,87,80,28,40,5,21,43,90,50,16,43,48,79,22,22,40,34,49,71,59,3,58,90}
Returns: {4, 2 }
{26,67,44,26,93,58,63,47,55,57,88,38,30,95,10,5,66,95}
Returns: {4, 1 }
{98,60,60,36,34,9,85,46,49,86,24,62,18,88,100,54,32,69,39,43,95,7,19,67,28,93,39,4,43,98,28,45,35,2,57,56,94,26,87,100,14,99,89}
Returns: {2, 3 }
{95,1,84,36,63,3,25,49,35,91,82,89,21,38,77,42,75,63,64,7,74,16,73,84,100,76,53,86,88,12,39,36,72,49,64,98,7,46,98,98}
Returns: {2, 2 }
{1,62,27,5,99,94,21,48,83,35,32,13,86,44,87,19,1,59,100,58,34}
Returns: {4, 3 }
{49,3,3,5,76,88,61,50,69,92,90,40,90,47,64,7,44,1}
Returns: {4, 5 }
{35,26,59,86,97,90,98,100,92,57,8,28,84,93,9,6,3,88,86,50,14,47,41,89,63,78,48,88,70}
Returns: {6, 5 }
{31,15,35,85,25,84,38,50,77,61,18,56,40,95,86,46,45,30,11,62,45,7,48,6,34,61}
Returns: {4, 4 }
{27,56,10,85,54,30,78,100,63,66,76,35,43,46,64,34,88,71,35,27,76,16,54}
Returns: {4, 4 }
{55,60}
Returns: {2, 1 }
{51,1,75,95,95,82,52,52,57,95,11,7,31,38,53,83,5,98,10,81,79,36,23,35,12,58,75,26,39,96,24,100,54,16,39,42,62,38,25,35,36,6,89,78,96,82,48,11,62}
Returns: {5, 4 }
{47,43,50,94,24,76,93,2,43,52,21,86,35,41,31,71,96,40,35,46,58,45,30,52,83,41,41,60,84,58,87,91,39,64,95,35,75,10,35,85,11,45,9,79}
Returns: {4, 4 }
{71,36,15,4,13,79,15,53,37,81,57,10,23,34,20,20,14,66,57}
Returns: {3, 3 }
{67,77,90,3,42,73,7,3,23,85,15,37,78,84,98,8}
Returns: {4, 2 }
{43,81,79,14,54,30,89,4,31,10,92,81,11,26,10,70,79,92,32,7,17,31,21,25,99,64,34,1,42,88,31,2,98,16,79,55,59,84,41,62,10,71}
Returns: {5, 4 }
{81,4,87,43,75,80}
Returns: {2, 2 }
{22,44,62,28,27,46,72,30}
Returns: {4, 2 }
{16,80,24,79,44,63,32,32,61,81,46,41,65,24,42,43,74,7,81,48,9,53,96,56,99,89,7,28,84}
Returns: {5, 3 }
{44,83,64,38,57,20}
Returns: {2, 4 }
{39,20,26,89,74,37,27,34,72,63,86,28,5,92,94,35,63,54,68,35,2,51,45,75,66,92,61}
Returns: {4, 3 }
{45,80,69,59,10,28,70}
Returns: {2, 2 }
{41,21,45,58}
Returns: {3, 1 }
{69,25,34,69,52,80,44,84,66,89,72,23,58,91,94,61,55,77,79,91,65,4,16,16,86,15,65,94,14,25,24,22,94}
Returns: {6, 1 }
{23,85,77,39,36,18,87,35,66,33,70,94,23}
Returns: {4, 2 }
{51,37,18,97,49,75,21,36,75,58,48,38,56,40,16,100,57,6,65,83,46,49,34,91,87,55,54,39,99,20,22,93,81,52,14,62,52,96,59,65,54,98}
Returns: {3, 3 }
{47,78,41,97,77,70,61,86,61,62,58,66,11,90,93,88,99,99,89,48,77,10,88,8,58,39,69,21,43,34,85,84,66,99,70,4,64,16,18}
Returns: {4, 4 }
{75,82,82,7,90,27,43,88,69,87,83,9,44,33,6}
Returns: {3, 7 }
{67,65,81,6,47,67,75,88,40}
Returns: {3, 2 }
{95,16,22,17,60,72,57,89,49,21,29,60,35,76,73,87,82,100,87,8,36,96,79,82,73,61,14,62,2,65,29,43,74,3,54}
Returns: {2, 5 }
{81,39,30,46,81,74,94,39,20,85,47,48,29,22,18,85,41,87,48,35,37,80,90,87,2,66,37,73,41,45,16,71,76,40,25,93,45,11,12,62,14,45,68,13,86,9,94,44,23}
Returns: {2, 3 }
{67,61,86,27,1,75,79,88,43,50,64}
Returns: {3, 2 }
{89,95,62,32,6,15,89,69,42,54,28,55,42,28,43,25,57,63,70,33,52,92,47,99,93,13,88,23,29,32,46,43,30,70,13,8,83,93,1,66,99,25,84,26,32,86,67,22,97,32}
Returns: {3, 3 }
{53,82,84,40,35,36,38,54,92,25,92,73,78,22,89,69,55,22,57,46,79,94,83,10,99,42,92,46,39,72,79,30,58,21,50,30,100,40,69,54,69,63,66,68,42,20,8,85,49,20}
Returns: {7, 4 }
{79,10,36,28,46,49,95,87,93,34,17,98,22,6,32,82,17,45,42,44,20,66,89,25,92,28,70,78,26,58,78,89,70,90,29,15,95,70,86,72,8,12,37,84,11,98,100,79,74,92}
Returns: {4, 2 }
{57,86,39,69,5,61,52,69,94,94,41,76,66,39,23,94,26,20,74,94,61,91,48,40,37,66,48,11,12,92,29,1,34,59,7,99,89,99,2,91,99,13,61,100,81,76,92,74,47,65}
Returns: {5, 4 }
{84,14,43,9,15,74,57,51,43,3,14,54,57,23,13,6,88,43,59,44,3,16,6,54,30,52,74,91,99,79,80,60,99,27,86,36,31,29,18,9,38,62,32,16,51,54,35,68,21,37}
Returns: {4, 4 }
{95,100,65,66,44,94,59,88,44,74,78,71,45,17,60,51,87,2,46,6,30,18,90,65,36,81,31,66,9,18,13,95,26,30,23,6,49,76,39,97,56,99,14,58,12,35,76,31,24,25}
Returns: {2, 5 }
{92,96,55,41,96,23,53,28,95,59,35,29,73,21,62,28,75,44,88,30,95,96,51,20,53,52,14,80,43,63,27,58,18,15,23,62,90,37,59,56,6,74,5,78,61,20,67,61,54,29}
Returns: {2, 7 }
{71,24,58,82,55,36,10,62,96,68,7,7,16,5,53,41,36,19,72,28,36,21,9,35,98,38,92,13,30,97,78,69,30,84,1,99,84,18,76,74,97,23,76,42,31,98,58,55,27,2}
Returns: {5, 6 }
{82,10,81,38,36,56,60,99,45,91,72,25,52,99,99,86,35,26,60,42,63,23,93,45,4,67,96,36,40,37,11,4,57,87,38,69,2,14,44,63,15,61,58,84,40,79,99,18,79,90}
Returns: {2, 2 }
{9,38,84,79,94,69,17,81,46,99,97,2,96,32,90,46,96,1,44,40,5,48,51,60,49,53,74,68,79,23,10,15,22,3,17,53,96,43,61,81,6,10,81,100,10,58,43,12,4,62}
Returns: {6, 2 }
{1, 4, 2, 5, 3, 7, 1 }
Returns: {4, 2 }
{1, 4, 2, 5 }
Returns: {3, 1 }
{1, 2, 3, 2 }
Returns: {3, 2 }
{7, 6, 5 }
Returns: {1, 3 }
{3, 2, 1 }
Returns: {1, 3 }
{5, 2, 10, 2, 5 }
Returns: {2, 2 }
{1 }
Returns: {1, 1 }
{1, 2, 1, 4, 5 }
Returns: {4, 1 }
{1, 2, 3, 4, 5 }
Returns: {5, 1 }
{3, 5, 5, 5 }
Returns: {2, 1 }
{1, 8, 2, 5, 6 }
Returns: {2, 2 }
{1, 2, 1, 7 }
Returns: {3, 1 }
{3, 3, 4, 5, 6, 7 }
Returns: {5, 1 }
{100 }
Returns: {1, 1 }
{8, 1, 2, 3, 4, 5, 5, 6 }
Returns: {1, 2 }
{1, 3, 2 }
Returns: {2, 2 }
{1, 2, 1, 2, 3, 2, 1, 2, 1 }
Returns: {3, 3 }
{1, 2, 6, 4, 5, 2, 1 }
Returns: {3, 4 }
{1, 5, 2, 2, 6 }
Returns: {3, 1 }
{1, 3, 2, 3, 4, 5 }
Returns: {4, 1 }
{1, 3, 1, 2, 4, 2 }
Returns: {3, 2 }
{10, 1, 1, 2, 5 }
Returns: {1, 2 }
{5, 2, 3, 4, 9 }
Returns: {2, 1 }
{5, 5, 5, 5, 5, 5 }
Returns: {1, 1 }
{4, 2, 5, 3, 7 }
Returns: {3, 1 }
{8, 1, 10, 3, 12, 4, 5, 11 }
Returns: {3, 2 }
{4, 3, 5, 7, 2 }
Returns: {3, 2 }
{1, 5, 2 }
Returns: {2, 2 }
{3, 2, 2, 2, 1 }
Returns: {1, 3 }
{1, 2, 3, 2, 4, 5 }
Returns: {5, 1 }
{1, 4, 2, 4, 3, 7, 1 }
Returns: {3, 2 }
{5, 4, 3, 2, 1 }
Returns: {1, 5 }
{7, 1, 2, 3, 4, 5 }
Returns: {1, 2 }
{1, 2, 1, 4 }
Returns: {3, 1 }
{6, 3, 5, 3, 1 }
Returns: {1, 4 }
{10 }
Returns: {1, 1 }
{9, 5, 6, 7, 8 }
Returns: {1, 2 }
{1, 2, 5, 2, 1 }
Returns: {3, 3 }
{5 }
Returns: {1, 1 }
{3, 1, 2 }
Returns: {1, 2 }
{5, 1, 2, 6 }
Returns: {2, 1 }
{5, 4 }
Returns: {1, 2 }