(事業部の定格。2)教育Codeforcesラウンド83 E(区间DP)

1  の#define HAVE_STRUCT_TIMESPEC
 2の#include <ビット/ STDC ++ H>
 3  使用して 名前空間STDを、
4  int型 A [ 507 ]。
5  int型の DP [ 507 ]。
6  INT メイン(){
 7つの      IOS :: sync_with_stdio()。
8      cin.tie(NULL)。
9      cout.tie(NULL)。
10      INT N。
11      CIN >> N。
12      のためにINT iは= 1 ; I <= N ++ I)
 13         CIN >> [i]は、
14      のためにINT iは= 1 ; iが<= N; ++ I){
 15          スタック< INT > S。
16          s.push([I])。
17          DP [I] = DP [I- 1 ] + 1 18          のためにINT J = I- 1 ; J; - J){
 19              のint NUM = [J]。
20              ながら(!s.empty()&& s.top()== NUM){
 21                  s.pop()。
22                  ++ NUM。
23             }
 24              s.push(NUM)。
25              DP [I] =分(DP [I]、DP [J- 1 ] +(INT )s.size())。
26          }
 27      }
 28      COUT << DP [n]は、
29      リターン 0 ;
30 }

 

おすすめ

転載: www.cnblogs.com/ldudxy/p/12466964.html