zoukankan      html  css  js  c++  java
  • bzoj4580: [Usaco2016 Open]248

    bzoj4580: [Usaco2016 Open]248

    Time Limit: 10 Sec  Memory Limit: 128 MB
    Submit: 23  Solved: 21
    [Submit][Status][Discuss]

    Description

    Bessie likes downloading games to play on her cell phone, even though she does find the small touch 
    screen rather cumbersome to use with her large hooves.She is particularly intrigued by the current g
    ame she is playing. The game starts with a sequence of NN positive integers (2≤N≤248), each in the
     range 1…40. In one move, Bessie can take two adjacent numbers with equal values and replace them a
     single number of value one greater (e.g., she might replace two adjacent 7s with an 8). The goal is
     to maximize the value of the largest number present in the sequence at the end of the game. Please 
    help Bessie score as highly as possible!

    Input

    The first line of input contains N, and the next N lines give the sequence of N numbers at the start
     of the game.

    Output

    Please output the largest integer Bessie can generate.

    Sample Input

    4
    1
    1
    1
    2

    Sample Output

    3
    //In this example shown here, Bessie first merges the second and third 1s to obtain the sequence 1 2 2
    , and then she merges the 2s into a 3. Note that it is not optimal to join the first two 1s.

    HINT

     

    Source

    显然我们可以区间DP。。。

     1 #include<bits/stdc++.h>
     2 #define rep(i,l,r) for(int i=l;i<=r;i++)
     3 #define N 300
     4 int n,ans,s[N],f[N][N],j;
     5 using namespace std;
     6 int main () {
     7      scanf("%d",&n); rep(i,1,n) scanf("%d",&s[i]),ans=max(ans,s[i]);
     8      rep(i,1,n) f[i][i]=s[i];
     9      rep(len,2,n)  for(int i=1;i+len-1<=n;i++) {
    10           j=i+len-1;
    11           f[i][j]=-1;
    12           rep(k,i,j-1) if(f[i][k]==f[k+1][j]) f[i][j]=max(f[i][j],f[i][k]+1);
    13           ans=max(ans,f[i][j]);
    14      }
    15      cout<<ans;
    16 }
    View Code
  • 相关阅读:
    关于动画的各种实现方法【转】
    关于弹出框的理念【转】
    jquery点击目标DIV以外关闭效果
    唯美诗句
    mouseover和this的巧用
    基于html5 canvas 的强大图表插件【Chart.js】
    关于百度地图API (持续跟新)
    JS的异步回调函数
    MMU内存管理单元(看书笔记)
    系统移植详细步骤
  • 原文地址:https://www.cnblogs.com/Bloodline/p/5492959.html
Copyright © 2011-2022 走看看