zoukankan      html  css  js  c++  java
  • [CQOI]涂色

    a799091501的题解

     1 #include<iostream>
     2 #include<cstdio>
     3 #include<cstring>
     4 using namespace std;
     5 const int maxn=1007;
     6 int a[maxn],f[maxn][maxn];
     7 int n,ans;
     8 char k;
     9 int main(){
    10     memset(f,0x7f,sizeof(f)); 
    11     while(cin>>k) a[++n]=k-64;
    12     for(int i=1;i<=n;i++) f[i][i]=1;
    13     for(int l=1;l<=n;l++){
    14         for(int i=1;i<=n;i++){
    15             int j=i+l;if(j>n) break;
    16             if(a[i]==a[j]){
    17                 f[i][j]=min(f[i+1][j],f[i][j-1]);
    18                 f[i][j]=min(f[i][j],f[i+1][j-1]+1);
    19             }
    20             for(int k=i;k<=j;k++) f[i][j]=min(f[i][j],f[i][k]+f[k+1][j]);
    21         } 
    22     }
    23     cout<<f[1][n]<<endl;
    24     return 0;
    25 } 

    这样是60分,但我不懂......

     1 #include<iostream>
     2 #include<cstdio>
     3 using namespace std;
     4 const int maxn=1007;
     5 int a[maxn],b[maxn],f[maxn];
     6 int n,ans;
     7 char k;
     8 int main(){
     9     while(cin>>k) a[++n]=k-64;
    10     for(int i=1;i<=n;i++){
    11         int j=n;
    12         if(a[i]!=b[i]){
    13             ans++;
    14             while(a[j]==b[j]) j--;
    15             for(int k=i;k<=j;k++) b[k]=a[i];
    16         }
    17     } 
    18     cout<<ans<<endl;
    19     return 0;
    20 } 
  • 相关阅读:
    分享几个原生javascript面向对象设计小游戏
    原生javascript模仿win8等待进度条。
    微信公众平台入门开发教程.Net(C#)框架
    AsyncDelegate
    Lock
    BackgroundWorker
    Thread
    深拷贝-浅拷贝
    WindowsService
    事件本质
  • 原文地址:https://www.cnblogs.com/lcan/p/9549111.html
Copyright © 2011-2022 走看看