TRT - Treats for the Cows
FJ has purchased N (1 <= N <= 2000) yummy treats for the cows who get money for giving vast amounts of milk. FJ sells one treat per day and wants to maximize the money he receives over a given period time. The treats are interesting for many reasons:
- The treats are numbered 1..N and stored sequentially in single file in a long box that is open at both ends. On any day, FJ can retrieve one treat from either end of his stash of treats.
- Like fine wines and delicious cheeses, the treats improve with age and command greater prices.
- The treats are not uniform: some are better and have higher intrinsic value. Treat i has value v(i) (1 <= v(i) <= 1000).
- Cows pay more for treats that have aged longer: a cow will pay v(i)*a for a treat of age a.
Given the values v(i) of each of the treats lined up in order of the index i in their box, what is the greatest value FJ can receive for them if he orders their sale optimally?
The first treat is sold on day 1 and has age a=1. Each subsequent day increases the age by 1.
Input
Line 1: A single integer, N
Lines 2..N+1: Line i+1 contains the value of treat v(i)
Output
The maximum revenue FJ can achieve by selling the treats
Example
Input: 5 1 3 1 5 2 Output: 43
hide comments
Afrizal:
2014-03-01 07:27:30
i use top-down recursion and still got AC |
|
nitesh kumar:
2014-02-04 14:47:47
cakewalk!!!!!! |
|
Akash Singh:
2014-02-03 09:39:20
in JAVA
|
|
Pritam Prakash:
2014-01-30 22:43:01
easy 2D DP problem.
|
|
Vipul Pandey:
2014-01-30 22:41:57
very nice dp for beginners. Enjoyed solving it. Last edit: 2014-01-30 22:46:23 |
|
Jitesh:
2014-01-04 09:28:55
Loved solving it. Nice dp. :) |
|
Siddharth:
2013-12-03 09:52:33
Memoized recursion gives TLE in java but AC in C |
|
californiagurl:
2013-11-17 05:20:14
@Nguyen Van Quang Huy-WA on 12th test case... plz help out. using bottom-up approach.
|
|
jkelava6:
2013-11-12 20:28:46
We've beeing working DP last time and teacher gave us this = DP! Recursive approach is slow, do iterative, but be carefull at greedy approach, and WA comes for example at 6 1 1 1 5 5! Interesting, it needs improvment... Last edit: 2013-11-12 20:29:12 |
|
Ouditchya Sinha:
2013-09-21 09:34:20
@Tushar Poddar : Check this http://ideone.com/3hShKy ,correct answer should be 10535, while your code is giving garbage output. Greedy approach will always fail for cases such as the one I gave( think why ). Also don't post your code here, use the forum. Kindly remove your code. :) |
Added by: | Nguyen Van Quang Huy |
Date: | 2006-02-15 |
Time limit: | 1s |
Source limit: | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Languages: | All except: NODEJS PERL6 VB.NET |
Resource: | USACO FEB06 Gold Division |