Skip to content

Instantly share code, notes, and snippets.

@evnpr
Created December 9, 2012 09:13
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save evnpr/4244006 to your computer and use it in GitHub Desktop.
Save evnpr/4244006 to your computer and use it in GitHub Desktop.
candies
N = gets.to_i
a = [0]*(N)
for i in 0..(N-1) do
a[i] = gets.to_i
end
n = [1]*(N)
for i in 0..(N-2) do
if a[i] > a[i+1] and n[i] <= n[i+1]
n[i] = n[i+1] + 1
elsif a[i] < a[i+1] and n[i] >= n[i+1]
n[i+1] = n[i] + 1
end
end
(N-1).downto(1) do |i|
if a[i] > a[i-1] and n[i] <= n[i-1]
n[i] = n[i-1] + 1
elsif a[i] < a[i-1] and n[i] >= n[i-1]
n[i-1] = n[i] + 1
end
end
t = 0
for i in 0..(N-1) do
t = t + n[i].to_i
end
print t
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment