Submit | All submissions | Best solutions | Back to list |
MORENA - Morenas Candy Shop ( Easy ) |
HARDER VERSION: www.spoj.com/problems/HILO/
Brunette's is a big candy shop from Little Campina in Paraibas, Brazil. This company is known for making the best candies in the world. Matheus Pheverso is the president of this company and he has a sister called Morena who loves and helps him in running the company. She uses to go the supermarket every day and buy a lot of stuffs to make all the candies. But she's insane and likes to take an alternate path to go to the supermarket.
Given the streets heights, a path is alternate only if the differences between successive numbers strictly alternate between positive and negative.
Example:
- Street Heights: {1, 3, 4, 5, 2, 9, 8, 10}
- Alternate Paths: {1, 3, 2, 9, 8}, {1, 4, 2, 8} {1, 5, 2, 9, 8}
Matheus Pheverso is a friendly brother and he would like to know the longest alternate path between the first supermarket and the last supermarket, this means that his sister always starts at the supermarket number 1, and always ends at the last supermarket.
Given the number of supermarkets, and their heights, your task is to print the longest alternate path between the first and the last city.
Input
There is a single positive integer N on the first line of input (1 <= N <= 10^6) representing the number of supermarkets. In the second line there're N integers Ai representing the heights of each supermarket (-10^18 <= Ai <= 10^18).
Output
You have to print the longest alternate path between the first and the last supermarket. The supermarket number 1 is always the first, and the supermarket number N is always the last one.
Example
Input: 5 1 2 3 4 5 Output 2
Input: 8 1 4 2 10 1 9 7 8 Output 8
Added by: | Mateus Dantas [ UFCG ] |
Date: | 2012-09-11 |
Time limit: | 1s |
Source limit: | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Languages: | All except: ASM64 |
hide comments
|
||||||
2019-10-30 18:59:53
O(N) solution in python throws TLE :/ PS: Same algo in c++ gets an AC Last edit: 2019-10-30 19:00:56 |
||||||
2019-08-17 01:01:24 enigmus
be sure to test these inputs: [1, 1, 2, 2, 3, 3] and [1, 1, 3, 3, 2, 2]. Also, I noticed that 2 <= N <= 10^6 Last edit: 2019-08-17 01:03:29 |
||||||
2018-08-26 20:16:51 DOT
For the given time limit, O(n^2) approaches are kind of an overkill and bound to TLE and there is a wonderful O(n) solution. Keep in mind the numbers range is -10^18-10^18 and confirm while checking the best answer the sequence contains the last element. |
||||||
2018-06-22 12:48:07
Can anybody help with DP approach, please? O(n^2) dp ensued TLE. Last edit: 2018-08-23 14:45:39 |
||||||
2017-07-14 13:42:17
no change for 0(same street heights) but sign alternates after 0 ,if present |
||||||
2016-06-18 15:33:10 suraj
got WA in 9 test case, can someone explain me 1 should be first and n should be last in every test case ya position can be change |
||||||
2016-06-18 15:25:34 suraj
@ryuga you can't change sequence |
||||||
2016-06-11 11:18:19
can anyone explain the sample cases as since the ouptut in second case is 8... so shouldn't the output of the first case will be 3 as - 1 3 2 4 5 |
||||||
2014-12-30 17:19:12 rohith
@shanmukh yep it is awesome ;P |
||||||
2014-12-30 09:41:57 :(
Awesome problem :) You should use an O(n) algo :D Last edit: 2014-12-30 09:42:29 |