結果
| 問題 |
No.209 Longest Mountain Subsequence
|
| コンテスト | |
| ユーザー |
alpha_virginis
|
| 提出日時 | 2015-05-15 23:19:18 |
| 言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 1,041 bytes |
| コンパイル時間 | 1,374 ms |
| コンパイル使用メモリ | 157,792 KB |
| 実行使用メモリ | 5,376 KB |
| 最終ジャッジ日時 | 2024-07-06 04:15:47 |
| 合計ジャッジ時間 | 1,869 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | WA * 6 |
ソースコード
#include <bits/stdc++.h>
int main() {
int T;
int N;
int A[200];
int ul, ud, up;
int dl, dd, dp;
std::cin >> T;
for(int i = 0; i < T; ++i) {
std::cin >> N;
for(int j = 0; j < N; ++j) {
std::cin >> A[j];
}
ud = 0;
dd = 1000000001;
ul = dl = 1;
up = dp = A[0];
//std::cout << "l p d" << std::endl;
//std::cout << dl << " " << dp << " " << dd << std::endl;
//std::cout << ul << " " << up << " " << ud << std::endl;
//std::cout << std::endl;
for(int j = 1; j < N; ++j) {
if( dd > dp - A[j] && dp > A[j] ) {
dl++;
dd = dp - A[j];
dp = A[j];
}
if( ud < A[j] - up ) {
ul++;
ud = A[j] - up;
up = A[j];
if( dl < ul ) {
dl = ul;
dd = 1000000001;
dp = A[j];
}
}
//std::cout << "l p d" << std::endl;
//std::cout << dl << " " << dp << " " << dd << std::endl;
//std::cout << ul << " " << up << " " << ud << std::endl;
//std::cout << std::endl;
}
std::cout << std::max(ul, dl) << std::endl;
}
return 0;
}
alpha_virginis