Submission #00016
ソースコード
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 | #include<bits/stdc++.h> using namespace std; int n,L; int a[100000]; int memo[100000]; int solve( int pos){ if (memo[pos]!=-1) return memo[pos]; int ret=0; if (0<pos && a[pos]<a[pos-1]) ret=max(ret,solve(pos-1)); if (pos<n && a[pos]<a[pos+1]) ret=max(ret,solve(pos+1)); return memo[pos]=ret+(L-a[pos]); } int main(){ cin>>n>>L; int minpos=0; for ( int i=0;i<n;i++){ cin>>a[i]; } memset (memo,-1, sizeof (memo)); int ans=-1; for ( int i=0;i<n;i++){ ans=max(ans,solve(i)); } cout<<ans<<endl; return 0; } |
ステータス
項目 | データ |
---|---|
問題 | 0001 - つらら (Icicles) |
ユーザー名 | ei1437 |
投稿日時 | 2015-12-22 14:06:25 |
言語 | C++11 |
状態 | Accepted |
得点 | 100 |
ソースコード長 | 555 Byte |
最大実行時間 | 47 ms |
最大メモリ使用量 | 2556 KB |
セット
セット | 得点 | Cases | |
---|---|---|---|
1 | Subtask1 | 10 / 10 | *in1 |
2 | Subtask2 | 10 / 10 | *in2 |
3 | Subtask3 | 10 / 10 | *in3 |
4 | Subtask4 | 10 / 10 | *in4 |
5 | Subtask5 | 10 / 10 | *in5 |
6 | Subtask6 | 10 / 10 | *in6 |
7 | Subtask7 | 10 / 10 | *in7 |
8 | Subtask8 | 10 / 10 | *in8 |
9 | Subtask9 | 10 / 10 | *in9 |
10 | Subtask10 | 10 / 10 | *in10 |
テストケース
ファイル名 | 状態 | 実行時間 | メモリ使用量 | # | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
2010-ho-t3-in1 | AC | 21 ms | 856 KB |
1
|
|||||||||
2010-ho-t3-in2 | AC | 16 ms | 864 KB |
2
|
|||||||||
2010-ho-t3-in3 | AC | 20 ms | 836 KB |
3
|
|||||||||
2010-ho-t3-in4 | AC | 39 ms | 1320 KB |
4
|
|||||||||
2010-ho-t3-in5 | AC | 47 ms | 1284 KB |
5
|
|||||||||
2010-ho-t3-in6 | AC | 40 ms | 1248 KB |
6
|
|||||||||
2010-ho-t3-in7 | AC | 39 ms | 1340 KB |
7
|
|||||||||
2010-ho-t3-in8 | AC | 31 ms | 1180 KB |
8
|
|||||||||
2010-ho-t3-in9 | AC | 26 ms | 2556 KB |
9
|
|||||||||
2010-ho-t3-in10 | AC | 28 ms | 1084 KB |
10
|