a252. 熟悉的「V」最對味
Tags :
Accepted rate : 0人/0人 (0%) [非即時]
評分方式:
Tolerant

最近更新 : 2021-12-09 20:29

Content

給定一段整數序列,請你找出最長的「V」,V分為「正V」與「倒V」,

正V」代表某段連續數列中包含一個最低點,在最低點左側序列皆呈現遞減,右側序列皆呈現遞增。
倒V」代表某段連續數列中包含一個最高點,在最高點左側序列皆呈現遞增,右側序列皆呈現遞減。
為了簡化問題,我們假設數列中相異的兩個正數不會相同。

請你寫一個程式找出輸入序列中最長的「V」並輸出他的長度與起點位置,
若存在多段「V」的長度相同,請挑左側序列較長者;若左側序列仍相同,請挑比較先出現的。

舉例來說,如果股票價格的序列是 $[6,5,4,5,4,3]$,其中最長的「V」有 $[6,5,4,5]$ 與 $[4,5,4,3]$,長度皆為 $4$。而我們應該挑選的是 $[6,5,4,5]$ 因為其左側序列較長。

如果整段序列中找不到任何「V」(整段皆為遞增或遞減,或是空序列時)請輸出 $0$。

Input

輸入一行整數序列 $x_1,x_2,…,x_n$。題目保證相鄰兩數字不會相同。

  • $0≤x_i<20000$, $i=1,2,…, n$ 
  • $0≤n≤40000$
Output

輸出最長「V」的長度與起點位置(位置從 1 開始計算)
若序列中不存在「V」,輸出 0 。

Sample Input #1
6 5 4 5 4 3
Sample Output #1
4 1
Sample Input #2
1 2 3 4 5 6 7 8 9
Sample Output #2
0
測資資訊:
記憶體限制: 256 MB
公開 測資點#0 (10%): 1.0s , <1M
公開 測資點#1 (10%): 1.0s , <1M
公開 測資點#2 (10%): 1.0s , <1M
公開 測資點#3 (10%): 1.0s , <1M
公開 測資點#4 (10%): 1.0s , <1M
公開 測資點#5 (10%): 1.0s , <1M
公開 測資點#6 (10%): 1.0s , <1M
公開 測資點#7 (10%): 1.0s , <1M
公開 測資點#8 (10%): 1.0s , <1M
公開 測資點#9 (10%): 1.0s , <1K
Hint :
Tags:
出處:
judgegirl [管理者: zero(管理員) ]


ID User Problem Subject Hit Post Date
沒有發現任何「解題報告」