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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • rabbitmq使用案例_标点符号的正确使用方法及例子

    rabbitmq使用案例_标点符号的正确使用方法及例子一些概念:RabbiMQ的认知:首先要抛弃熟悉的客户端和服务器的观念。对于RabbitMQ应该认为是消息投递服务。、               其次:从应用程序角度来看RabbitMQ的话,应用程序要先决定是个消息的发送者还是消息的接受者。                    如果从RabbitMQ的角度来看的话…

    2022年10月3日
    11
  • powerdesigner生成mysql语句_oracle创建表的sql语句

    powerdesigner生成mysql语句_oracle创建表的sql语句在实际工作中,一张表,我们可能需要在Mysql数据库中建表,又要在Oracle数据库中建表。表中每个字段的数据类型、中文注释、是否可为NULL问题,非常影响我们建表的效率。本篇文章,以Mysql数据库表为原表,通过PowerDesigner工具将其转化成Oracle数据库建表语句。1、以student(学生表)为例,Mysql数据库中建表语句如下所示。需要注意的是,…

    2025年10月3日
    2
  • 用U盘ghost备份win10系统操作流程_ghost全盘备份还原

    用U盘ghost备份win10系统操作流程_ghost全盘备份还原使用pe进行备份1、这里我使用了老毛桃的pe系统2、备份分区3、选中要备份的硬盘4、选择备份的分区按下shift按键,可以同时选中EFISystem分区和C盘系统分区。5、选择保存位置选择保存的位置,以及文件名称,这里最好保存到一个文件夹下,因为备份的文件可能会是多个。6、等待备份完成还原系统1、新电脑上建立分区选中空硬盘,点击新建分区,最后建立出来ESP\MSR\系统分区。在建立ESP分区的时候可以分配一个盘符,否则还原系统时,可能看不到这个分区。2、开始

    2025年9月20日
    5
  • Java必备常见单词

    Java必备常见单词资源共享学习交流群号:769674658(快满)qq交流二群(296389054)(一)Java基础 public公有的 private私有的 protected保护的 …

    2022年10月9日
    4
  • git上项目代码拉到本地方法

    git上项目代码拉到本地方法1、先在本地打开workspace文件夹,或者自定义的文件夹,用来保存项目代码的地方。2、然后登陆GitHub账号,点击复制项目路径3、在刚才文件夹下空白处点击鼠标右键,打开Git窗口4、在以下页面中输入命令gitclone加刚才复制的路径,如下图(可能Ctrl+V用不了,可以用右键选择Paste完成复制)5、输入完命令行之后回车就行,等待下载完毕,然后是切换…

    2022年5月29日
    113
  • bytebuffer是什么_byte与bit

    bytebuffer是什么_byte与bit一.ByteBuffer   ByteBuffer是JDKNIO中提供的Java.nio.Buffer,在内存中预留指定大小的存储空间来存放临时数据,其他Buffer的子类有:CharBuffer、DoubleBuffer、FloatBuffer、IntBuffer、LongBuffer和ShortBuffer 1.Buffer   ByteBuffer继承…

    2025年12月1日
    7

发表回复

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

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