1. 程式人生 > >10月20日 迷之階梯

10月20日 迷之階梯

技術分享 bsp jpg min style sin nbsp size pow

題目

技術分享圖片

分析

Dp

代碼

 1 #include<iostream>
 2 #include<bits/stdc++.h>
 3 using namespace std;
 4 int h[201];
 5 int f[201];
 6 int main ()
 7 {
 8     memset(f,0x7f,sizeof(f));
 9     int n;
10     cin>>n;
11     for (int i=1;i<=n;i++)
12         cin>>h[i];
13 f[0]=f[1]=0; 14 f[2]=1; 15 for (int i=2;i<=n;i++) 16 { 17 if (h[i-1]+1==h[i]) 18 f[i]=min(f[i],f[i-1]+1); 19 for (int j=2;j<=i-1;j++) 20 for (int k=1;k<=j-1;k++) 21 { 22 int s=pow(2,k); 23 if (h[j-k]+s>=h[i])
24 f[i]=min(f[i],f[j]+k+1); 25 } 26 } 27 if (f[n]!=2139062143) 28 cout<<f[n]; 29 else 30 cout<<"-1"; 31 }

10月20日 迷之階梯