4382. 快速打字

这篇具有很好参考价值的文章主要介绍了4382. 快速打字。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Powered by:NEFU AB-IN

Link

4382. 快速打字

  • 题意

    芭芭拉是一个速度打字员。
    为了检查她的打字速度,她进行了一个速度测试。
    测试内容是给定她一个字符串 I,她需要将字符串正确打出。
    但是,芭芭拉作为一个速度打字员,在追求速度的同时,难免会发生一些错误,按错一些按键。
    最终,芭芭拉打出的字符串为 P
    现在,芭芭拉想知道,能否仅通过删除一些额外字母的方式,将字符串 P变为字符串 I
    如果可以,则输出需要删除的字母数量,如果不行,则输出 IMPOSSIBLE。

  • 思路

    双指针,锁定I字符串的某一字符,遍历P的字符,遇到相同的再继续一起往下遍历,否则走到底,走出去了就是不可能文章来源地址https://www.toymoban.com/news/detail-536253.html

  • 代码

    '''
    Author: NEFU AB-IN
    Date: 2023-07-08 21:41:05
    FilePath: \Acwing\4382\4382.py
    LastEditTime: 2023-07-09 00:24:30
    '''
    # import
    from sys import setrecursionlimit, stdin, stdout, exit
    from collections import Counter, deque
    from heapq import heapify, heappop, heappush, nlargest, nsmallest
    from bisect import bisect_left, bisect_right
    from datetime import datetime, timedelta
    from string import ascii_lowercase, ascii_uppercase
    from math import log, gcd, sqrt, fabs, ceil, floor
    
    
    class sa:
        def __init__(self, x, y):
            self.x = x
            self.y = y
    
        def __lt__(self, a):
            return self.x < a.x
    
    
    # Final
    N = int(1e5 + 10)
    M = 20
    INF = int(2e9)
    
    # Define
    setrecursionlimit(INF)
    input = lambda: stdin.readline().rstrip("\r\n")  # Remove when Mutiple data
    read = lambda: map(int, input().split())
    AR = lambda x=0: [x] * N
    
    # —————————————————————Division line ——————————————————————
    
    t, = read()
    
    for _ in range(t):
        I = input()
        p = input()
    
        j, cnt, flag = 0, 0, 0
        for i in range(len(I)):
            while j < len(p) and I[i] != p[j]:
                j += 1
                cnt += 1
            if j >= len(p):
                flag = 1
                print(f"Case #{_ + 1}: IMPOSSIBLE")
                break
            if I[i] == p[j]:
                j += 1
        if flag == 0:
            print(f"Case #{_ + 1}: {cnt + len(p) - j}")
    

到了这里,关于4382. 快速打字的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Mysql】万字长文带你快速掌握数据库基础概念及SQL基本操作

    为了巩固所学的知识,作者尝试着开始发布一些学习笔记类的博客,方便日后回顾。当然,如果能帮到一些萌新进行新技术的学习那也是极好的。作者菜菜一枚,文章中如果有记录错误,欢迎读者朋友们批评指正。 (博客的参考源码可以在我主页的资源里找到,如果在学习的

    2024年02月15日
    浏览(18)
  • MySQL数据库(Python)

    常用指令 linux安装 更新YUM源:sudo rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-7.noarch.rpm 安装MySQL:sudo yum -y install mysql-community-server --enablerepo=mysql80-community --nogpgcheck 启动数据库 net start mysql或者sudo systemctl start mysqld 停止MySQL服务 sudo service mysql stop 启动MySQL服务 sudo servic

    2023年04月13日
    浏览(12)
  • 利用python读写mysql数据库数据

    方法一: 1. python连接mysql数据库:需要用到 pymysql 库和 sqlalchemy库: 创建连接 create_engine: 2. 提供 sql 语句 3. 执行查询,使用 read_sql_query 得到pandas的dataframe数据 4. 写数据到 mysql 数据库 方法二:使用 read_sql 方法三:直接使用pymysql进行查询,插入数据、更新数据、删除数据

    2024年02月09日
    浏览(21)
  • MySQL数据库----------安装anaconda---------python与数据库的链接

    🎂 ✨✨✨✨✨✨🍧🍧🍧🍧🍧🍧🍧🎂 ​🎂 作者介绍: 🎂🎂 🎂 🎉🎉🎉🎉🎉🎉🎉 🎂 🎂作者id:老秦包你会, 🎂 简单介绍:🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂🎂 喜欢学习C语言和python等编程语言,是一位爱分享的博主,有兴趣的小可爱可以来互讨 🎂🎂

    2024年02月12日
    浏览(13)
  • python链接数据库mysql

    前提工作: 1、先在win10上安装好mysql,教程可以参考: 【精选】windows10上安装mysql(详细步骤)_win10安装mysql-CSDN博客 2、在PyCharm上安装对应的pymysql库: 可以用pip安装:python -m pip install pymysql 都进行好之后,直接上代码,只要链接成功,就可以随心所欲的操作数据库了: 补

    2024年02月07日
    浏览(17)
  • Python 操作 MySQL 数据库

    Python 标准数据库接口为 Python DB-API,Python DB-API为开发人员提供了数据库应用编程接口。 Python 数据库接口支持非常多的数据库,你可以选择适合你项目的数据库: GadFly mSQL MySQL PostgreSQL Microsoft SQL Server 2000 Informix Interbase Oracle Sybase 你可以访问Python数据库接口及API查看详细的支

    2024年02月14日
    浏览(14)
  • Python 连接 MySQL 数据库

    在实际数据分析和建模过程中,我们通常需要从数据库中读取数据,并将其转化为 Pandas dataframe 对象进行进一步处理。而 MySQL 数据库是最常用的关系型数据库之一,因此在 Python 中如何连接 MySQL 数据库并查询数据成为了一个重要的问题。 本文将介绍两种方法来连接 MySQL 数据

    2024年02月16日
    浏览(19)
  • Python——操作MySQL数据库

    😊学习永无止境,记得每天学习新的知识!! 在很多业务场景中,我们或多或少都要对数据库上的数据进行的一系列操作, 包括读取数据、写数据、更新或修改数据、删除数据 等。这些操作可以通过编写SQL语句来实现,也可以通过使用数据库管理系统提供的API接口来实现。

    2024年02月09日
    浏览(16)
  • 【python】进阶--->MySQL数据库(四)

    创建表时,不直接在字段后面添加主键,在表的约束区添加主键 创建表时不写主键,表创建后,通过修改表的结构,给某个字段添加主键 unique约束唯一标识数据库表中的每条记录. primary key 自动 拥有了unique的约束. 创建表时,直接在字段后面添加唯一约束 创建表时,在约束区

    2024年01月18日
    浏览(20)
  • 利用Python操作Mysql数据库

    我们在进行Python编程的时候,时常要将一些数据保存起来,其中最方便的莫过于保存在文本文件了。但是如果保存的文件太大,用文本文件就不太现实了,毕竟打开都是个问题,这个时候我们需要用到数据库。提到数据库,相信大部分人都不会陌生,今天我们要学的就是数据

    2023年04月24日
    浏览(10)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包