Advertisement
hellboy2k8

Untitled

Oct 4th, 2012
592
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.02 KB | None | 0 0
  1. Problem Statement
  2.     
  3. A sequence of numbers is called a zig-zag sequence if the differences between successive numbers strictly alternate between positive and negative. The first difference (if one exists) may be either positive or negative. A sequence with fewer than two elements is trivially a zig-zag sequence.
  4. For example, 1,7,4,9,2,5 is a zig-zag sequence because the differences (6,-3,5,-7,3) are alternately positive and negative. In contrast, 1,4,7,2,5 and 1,7,4,5,5 are not zig-zag sequences, the first because its first two differences are positive and the second because its last difference is zero.
  5. Given a sequence of integers, sequence, return the length of the longest subsequence of sequence that is a zig-zag sequence. A subsequence is obtained by deleting some number of elements (possibly zero) from the original sequence, leaving the remaining elements in their original order.
  6. Definition
  7.     
  8. Class:
  9. ZigZag
  10. Method:
  11. longestZigZag
  12. Parameters:
  13. int[]
  14. Returns:
  15. int
  16. Method signature:
  17. int longestZigZag(int[] sequence)
  18. (be sure your method is public)
  19.     
  20.  
  21. Constraints
  22. -
  23. sequence contains between 1 and 50 elements, inclusive.
  24. -
  25. Each element of sequence is between 1 and 1000, inclusive.
  26. Examples
  27. 0)
  28.  
  29.     
  30. { 1, 7, 4, 9, 2, 5 }
  31. Returns: 6
  32. The entire sequence is a zig-zag sequence.
  33. 1)
  34.  
  35.     
  36. { 1, 17, 5, 10, 13, 15, 10, 5, 16, 8 }
  37. Returns: 7
  38. There are several subsequences that achieve this length. One is 1,17,10,13,10,16,8.
  39. 2)
  40.  
  41.     
  42. { 44 }
  43. Returns: 1
  44.  
  45. 3)
  46.  
  47.     
  48. { 1, 2, 3, 4, 5, 6, 7, 8, 9 }
  49. Returns: 2
  50.  
  51. 4)
  52.  
  53.     
  54. { 70, 55, 13, 2, 99, 2, 80, 80, 80, 80, 100, 19, 7, 5, 5, 5, 1000, 32, 32 }
  55. Returns: 8
  56.  
  57. 5)
  58.  
  59.     
  60. { 374, 40, 854, 203, 203, 156, 362, 279, 812, 955,
  61. 600, 947, 978, 46, 100, 953, 670, 862, 568, 188,
  62. 67, 669, 810, 704, 52, 861, 49, 640, 370, 908,
  63. 477, 245, 413, 109, 659, 401, 483, 308, 609, 120,
  64. 249, 22, 176, 279, 23, 22, 617, 462, 459, 244 }
  65. Returns: 36
  66.  
  67. This problem statement is the exclusive and proprietary property of TopCoder, I
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement