dp3003打印机怎么清零_最小宽度dp

dp3003打印机怎么清零_最小宽度dp有台奇怪的打印机有以下两个特殊要求:打印机每次只能打印由 同一个字符 组成的序列。每次可以在任意起始和结束位置打印新字符,并且会覆盖掉原来已有的字符。给你一个字符串 s ,你的任务是计算这个打印机打印它需要的最少打印次数。示例 1:输入:s = “aaabbb”输出:2解释:首先打印 “aaa” 然后打印 “bbb”。示例 2:输入:s = “aba”输出:2解释:首先打印 “aaa” 然后在第二个位置打印 “b” 覆盖掉原来的字符 ‘a’。 提示:1 <= s.le

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

有台奇怪的打印机有以下两个特殊要求:

打印机每次只能打印由 同一个字符 组成的序列。
每次可以在任意起始和结束位置打印新字符,并且会覆盖掉原来已有的字符。
给你一个字符串 s ,你的任务是计算这个打印机打印它需要的最少打印次数。

示例 1:

输入:s = "aaabbb"
输出:2
解释:首先打印 "aaa" 然后打印 "bbb"。
示例 2:

输入:s = "aba"
输出:2
解释:首先打印 "aaa" 然后在第二个位置打印 "b" 覆盖掉原来的字符 'a'

提示:

1 <= s.length <= 100
s 由小写英文字母组成

const int N = 1e3 + 10;
const int INF = 0x3f3f3f3f;
int f[N][N] = { 
   0};
class Solution { 
   
public:
    int strangePrinter(string s) { 
   
        int n = s.size();
        memset(f,0x3f,sizeof f);
        for(int len = 1;len <= n;len ++){ 
   
            for(int l = 0;l <= n - len;l ++){ 
   
                int r = l + len - 1;
                if(l == r)f[l][r] = 1;
                else{ 
   
                    if(s[l] == s[r])f[l][r] = f[l][r - 1];
                    else{ 
   
                        for(int k = l;k < r;k ++){ 
   
                            f[l][r] = min(f[l][r],f[l][k] + f[k + 1][r]);
                        }
                    }
                }
            }
        }
        return f[0][n - 1];
    }
};
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/168552.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • SpringBoot常见的经典面试题

    SpringBoot常见的经典面试题SpringBoot常见的经典面试题最近很多人面试时,简历上都说自己熟悉SpringBoot,或者说正在学习SpringBoot,一被面试官问道,都只停留在简单的使用阶段,很多东西都不清楚,下面我整理了一些springboot比较常见的面试题。1、什么是SpringBoot?SpringBoot是Spring开源组织下的子项目,是Spring组件一站式解决方案,…

    2022年6月7日
    30
  • cubieboard 资源

    cubieboard 资源开发链接:http://pan.baidu.com/s/1o6r27V0密码:46h2文档资料:http://pan.baidu.com/s/1kTFXMSZ密码:9pka视频资料:http://pan.baidu.com/s/1ntLYBLB密码:mvcf http://dl.cubieboard.org/model/cubietruck/…

    2022年7月22日
    15
  • rc522 nfc_基于单片机的门禁系统

    rc522 nfc_基于单片机的门禁系统文章目录1.前言(包括一些个人理解)1.前言(包括一些个人理解)(2021/11/1编辑)在项目需要做一个NFC门禁功能的时候,突然发现有个RC522丢在我的桌面,甚至不知道它上面的引脚什么意思(还不会SPI通讯),搜索关键词“RC522”去看博客搜索资料,发现了很多都在说扇区,块,S50(M1)卡,然后就给代码,一开始我还以为S50是内嵌在这个模块里面的一个存储器,然后越看越怪,后面去淘宝搜索S50,才发现S50其实是我们的门禁卡,RC522是用来感应和判断的。…

    2025年12月5日
    4
  • matlab函数之length函数「建议收藏」

    matlab函数之length函数「建议收藏」文章来源:http://blog.sina.com.cn/yadan422 在MATLAB中:size:获取数组的行数和列数length:数组长度(即行数或列数中的较大值)numel:元素总数。s=size(A),当只有一个输出参数时,返回一个行向量,该行向量的第一个元素时数组的行数,第二个元素是数组的列数。[r,c]=size(A),当有两个输出参数时,size函数将数组的行数返回…

    2022年6月12日
    43
  • codelf用不了

    codelf用不了codelf用不了,变量命名神器试试这个连接:http://codeif.xinke.org.cn/还是不行?试试别的浏览器:如Ie//一开始我在谷歌浏览器也是用不了,然后打开控制台发现报错:’addEventListener’ofundefined就换成ie打开…

    2022年6月4日
    138
  • vbnet怎么连接access数据库(VB·Net视频)

    在向大家详细介绍VB.NETAccess数据库连接之前,首先让大家了解下VB.NET的简介,然后全面介绍VB.NETAccess数据库连接。VisualBasic.NET是从VisualBasic语言演变而来vb.net教程的,是一种为高效地生成类型安全和面向对象的应用程序而设计的语言。VisualBasic允许开发人员开发面向Windows、Web和移动设备的程序。与所有面向Microsoft.NETFramework的语言一样,使用VisualBasic编写的程序

    2022年4月16日
    171

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号