首页 > 编程语言 >天池编程大赛周赛-Character deletion 题解

天池编程大赛周赛-Character deletion 题解

时间:2023-04-29 12:31:31浏览次数:55  
标签:周赛 sub 示例 题解 Character result str string

题目描述

Enter two strings and delete all characters in the second string from the first string

String contains spaces $1\leq len(str),len(sub) \leq 10^5$

示例

  • 示例 1:
    Input:  str=”They are students”,sub=”aeiou”
    Output: ”Thy r stdnts”
    
    来源:九章算法 链接:https://tianchi.aliyun.com/oj/141754208384739500/160296091929219251

  • 解题思路

很简单的模拟题,由于子串可能会比较长, 直接使用 in sub 会导致超时情况, 需要先用集合操作化简。

  • 题解1:

    正确的示范

      class Solution:
          """
          @param str: The first string given
          @param sub: The given second string
          @return: Returns the deleted string
          """
          def CharacterDeletion(self, str, sub):
              # write your code here
              result = []
              sub = set(sub)
              for s in str:
                  if s in sub:
                      pass
                  else:
                      result.append(s)
              return "".join(result)
    

标签:周赛,sub,示例,题解,Character,result,str,string
From: https://blog.51cto.com/spaceack/6236713

相关文章

  • P3573 [POI2014]RAJ-Rally 题解
    非常好题目,爱来自xc。看到有向无环图,想到拓扑序。通过拓扑序,可以轻松求出以每个点为起点的最长路\(disS\)与每个点为终点的最长路\(disF\)。如何求总共的最长路?在\(disS,disF,disS_u+1+disF_v((u,v)\inE)\)中取最大值即可。注意最后一项,表示将连边的二点值相加。......
  • 题解 CF1264D1
    前言数学符号约定:\(\dbinom{n}{m}\):表示\(n\)选\(m\)。如非特殊说明,将会按照上述约定书写符号。题目分析:考虑题目的问题弱一点的版本,假设此时我们的括号序列是确定的如何求其括号匹配的最深深度。如果你有些许dp基础的话,不难想到如下做法:考虑位置\(i\),将区间\([1,......
  • 题解 CF1264D2
    前言建议大家看一下我对于D1的题解(传送门)后再看本题解,本题解是基于那篇题解的基础上书写的。数学符号约定\(\dbinom{n}{m}\):表示\(n\)选\(m\)。如非特殊说明,将会按照上述约定书写符号。题目分析首先引用一下D1的答案:\(\displaystyle\sum_{i=1}^n\displaystyle\sum_{......
  • [ARC125E] Snack 题解
    不难发现一个较简单的网络流模型:源点向所有糖果\(i\)连\(a_i\)的容量;所有糖果向所有人\(i\)连\(b_i\)的容量;所有人\(i\)向汇点连\(c_i\)的容量。但第二步中建出的边数达到了惊人的\(O(nm)\),显然过不去。考虑优化。从最大流角度优化较困难,由于最大流等价于最小......
  • P4423 题解
    前言题目传送门!更好的阅读体验?刚学分治就来写篇题解纪念一下,其实和平面最近点对一样的(总共四倍经验!)。思路根据P7883的分治思路,这题我们可以考虑用相似的方法解决。首先将点集按\(x\)坐标从小到大排序。然后分治。对于\(\left[l,r\right]\)区间,分治为\(\left[l,mid......
  • 题解 P3225 [HNOI2012] 矿场搭建
    解析传送门一道简单的tarjan题题意:在无向图中找一些点,这些点组成的的点集记为\(V\),使得去掉任意一个点,剩下的每一个点都可以到达\(V\)中任意一个点,求点集\(V\)的大小的最小值及其方案数。去掉一个点,很自然的联想到割点,那么考虑一下割点在不在备选集合中。如图,显然可以看出,......
  • Codeforces Round 868 (Div. 2) A-E题解
    比赛地址这把真不在状态,麻了,看来还得再练A.A-characteristic题意:给出n和k,要求构造只含1和-1数组a,存在k对(i,j)(i≠j),有a[i]*a[j]=1Solution令构造的数组有x个1和y个-1,那么其对于答案的贡献有\[x*(x-1)/2+y*(y-1)/2\]又因为有x+y=n,所以可以转化成关于x的一元二次方程化简后......
  • COMPSCI 589 问题解答
    COMPSCI589Homework4-Spring2023DueMay6,2023,11:55pmEasternTime1InstructionsThishomeworkassignmentconsistsofaprogrammingportion.Whileyoumaydiscussproblemswithyourpeers,youmustanswerthequestionsonyourownandimplementall......
  • P4681 [THUSC2015]平方运算 题解
    题面链接简要题意给定一个序列,区间.map([](intx){x=x*x%p;});,区间求和。p给定,为小质数。\(N,M\le10^5\)。题解而把一个数看作一个点,向其平方取模连一条边,则最终必然构成一个基环森林,注意到\(P\)很小,每个数经过\(11\)次迭代之后就会进入环中。对于一个区间,如......
  • “makefile:425: *** 遗漏分隔符 。 停止。”问题解决
    在终端下输入make时出现“makefile:2:***遗漏分隔符。停止。”问题,原因是在编写makefile文件时:3:3.c        gcc-o33.cgcc前的是tab分隔符,不能用空格,否则会出现“makefile:2:***遗漏分隔符。停止。”提示。。。make中规定每一Shell命令之前的开头必须使用<t......