zoukankan      html  css  js  c++  java
  • HDU 2577 How to Type【DP】

    题意:给出一个字符串,有大写有小写,问最少的按键次数。然后打字的这个人有一个习惯,打完所有的字之后,指示灯要关闭。

    dp[i][j]表示打到第i个字母,j有0,1两个值表示指示灯开或者关的状态

    然后就可以写出状态转移方程了,因为最后需要灯是灭的,所以最后在找最小值的时候,dp[len][1]需要加1

    又一次看的题解===go--go

     1 #include<iostream>  
     2 #include<cstdio>  
     3 #include<cstring>  
     4 #include<algorithm>  
     5 using namespace std;
     6 
     7 int dp[200][2];
     8 char s[200];
     9 
    10 int main()
    11 {
    12     int ncase,i,len,ans;
    13     scanf("%d",&ncase);
    14     getchar();
    15     while(ncase--)
    16     {
    17         memset(dp,0,sizeof(dp));
    18         ans=0;
    19         gets(s+1);
    20         len=strlen(s+1);
    21         dp[0][0]=0;
    22         dp[0][1]=1;
    23         for(i=1;i<=len;i++)
    24         {
    25             if(s[i]>='A'&&s[i]<='Z')
    26             {
    27                 dp[i][1]=min(dp[i-1][1]+1,dp[i-1][0]+2);
    28                 dp[i][0]=min(dp[i-1][1]+2,dp[i-1][0]+2);
    29             }
    30             else
    31             {
    32                 dp[i][1]=min(dp[i-1][1]+2,dp[i-1][0]+2);
    33                 dp[i][0]=min(dp[i-1][1]+2,dp[i-1][0]+1);                
    34             }
    35         }
    36         ans=min(dp[len][0],dp[len][1]+1);
    37         printf("%d
    ",ans);        
    38     }
    39 }
    View Code
  • 相关阅读:
    Hadoop使用实例
    hdfs操作命令
    Hadoop安装与HDFS体系结构
    Linux和MySQL的安装与基本操作
    Hadoop演进与Hadoop生态
    作业一
    Shader笔记——9.简单灰色效果+遮罩
    iOS——xcodeproj脚本
    iOS——KSAdSDK
    UnityPlugins——4.SignInWithApple
  • 原文地址:https://www.cnblogs.com/wuyuewoniu/p/4297350.html
Copyright © 2011-2022 走看看