zoukankan      html  css  js  c++  java
  • 小明的喷漆计划

    想了20min然后写了10min qwq 

    直接把思考过程挂上来了,应该能看懂吧/wq

    (删去了大部分错误的过程,然后才发现正确的就这么点/kk

    然而又没能一次过。查了很久发现是第三层循环那里把 i 打成了 1 。果然又是低级错误呜呜呜

    #include<bits/stdc++.h>
    using namespace std;
    int n,f[101][101];
    char s[101];
    int main()
    {
        while(scanf("%s",s+1)!=EOF)
        {
            n=strlen(s+1);
            for(int i=1;i<=n;i++)
            {
                for(int j=1;j<=n;j++)
                {
                    f[i][j]=2e9;
                }
            }
            for(int i=1;i<=n;i++) f[i][i]=1;//长度为1的区间值为1
            for(int l=2;l<=n;l++)
            {
                for(int i=1;i<=n-l+1;i++)
                {
                    int j=i+l-1;
                    for(int k=i;k<j;k++)//emmm就是这里第一次的时候打错了(
                    {
                        f[i][j]=min(f[i][j],f[i][k]+f[k+1][j]);
                    }
                    if(s[i]==s[j]) f[i][j]--;//如果两端是一样的那就可以少涂一次
                }
            }
            cout<<f[1][n]<<endl;
        }
        return 0;
    }
  • 相关阅读:
    neo4j通过LOAD CSV导入结点和关系
    二叉树的几种遍历方法
    数据结构之二叉排序树
    结合数据结构来看看Java的String类
    变量和对象
    Java虚拟机的内部体系结构
    算法

    freemarker
    solr的安装和启动
  • 原文地址:https://www.cnblogs.com/ying-xue/p/xiao-ming-de-pen-qi-ji-hua.html
Copyright © 2011-2022 走看看