zoukankan      html  css  js  c++  java
  • LightOJ 1422 Halloween Costumes

    dp[i]][j]=min(dp[i+1][j]+1,dp[i+1][k-1]+dp[k][j])

    表示第i天到j的最小数量。如果第i天的衣服只自己穿的话,不考虑后面的就是dp[i][j]=dp[i+1][j]+1.否则就是dp[i][j]=dp[i+1][k-1]+dp[k][j],其中第k天的衣服和第i天一样,这就是考虑第i天以后还有和它穿的衣服一样的情况

     1 //#pragma comment(linker, "/STACK:167772160")//手动扩栈~~~~hdu 用c++交
     2 #include<cstdio>
     3 #include<cstring>
     4 #include<cstdlib>
     5 #include<iostream>
     6 #include<queue>
     7 #include<stack>
     8 #include<cmath>
     9 #include<set>
    10 #include<algorithm>
    11 #include<vector>
    12 // #include<malloc.h>
    13 using namespace std;
    14 #define clc(a,b) memset(a,b,sizeof(a))
    15 #define LL long long
    16 const int Inf = 0x3f3f3f3f;
    17 const double eps = 1e-5;
    18 const double pi = acos(-1);
    19 // inline int r(){
    20 //     int x=0,f=1;char ch=getchar();
    21 //     while(ch>'9'||ch<'0'){if(ch=='-') f=-1;ch=getchar();}
    22 //     while(ch>='0'&&ch<='9'){x=x*10+ch-'0';ch=getchar();}
    23 //     return x*f;
    24 // }
    25 
    26 int a[110];
    27 int dp[110][110];
    28 
    29 int main(){
    30     int t;
    31     int cas=1;
    32     scanf("%d",&t);
    33     while(t--){
    34        clc(dp,0);
    35        int n;
    36        scanf("%d",&n);
    37        for(int i=1;i<=n;i++) scanf("%d",&a[i]);
    38        
    39        for(int i=1;i<=n;i++)
    40         for(int j=i;j<=n;j++){
    41             dp[i][j]=i-j+1;
    42         }
    43         for(int i=n;i>=1;i--){
    44             for(int j=i;j<=n;j++){
    45                 dp[i][j]=dp[i+1][j]+1;
    46                 for(int k=i;k<=j;k++){
    47                     if(a[k]==a[i])
    48                     dp[i][j]=min(dp[i][j],dp[i+1][k-1]+dp[k][j]);
    49                 }
    50             }
    51         }
    52         printf("Case %d: %d
    ",cas++,dp[1][n]);
    53        } 
    54     return 0;
    55 }
    View Code
  • 相关阅读:
    Linux之apt-get无sudo权限安装软件
    Java stream 并发应用案例
    java 执行 shell脚本通过mysql load data导入数据
    修改mysql存储过程或函数的定义着
    [ERR] 1118
    定时杀死mysql中sleep的进程
    centos7安装配置MariaDB10
    Tomcat设置JVM参数
    通Shell获取Tomcat进程号并杀死进程
    对于之前已经push的项目增加.gitignore配置文件不起作用的处理
  • 原文地址:https://www.cnblogs.com/ITUPC/p/5471922.html
Copyright © 2011-2022 走看看