鱼C论坛

 找回密码
 立即注册
楼主: zltzlt

[已解决]Python:每日一题 322

[复制链接]
发表于 2020-2-3 16:23:17 | 显示全部楼层
本帖最后由 fan1993423 于 2020-2-3 16:27 编辑
  1. def fun322(s,t):
  2.     while '#' in s:
  3.         if s.find('#')==0:s=s[1:]
  4.         index=s.find('#')
  5.         s=s[:index-1]+s[index+1:]
  6.     while '#' in t:
  7.         if t.find('#')==0:t=t[1:]
  8.         index=t.find('#')
  9.         t=t[:index-1]+t[index+1:]
  10.     return s==t
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-3 16:24:44 | 显示全部楼层

输入 s = "a##c", t = "#a#c" 超时
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-3 16:27:49 | 显示全部楼层
zltzlt 发表于 2020-2-3 16:24
输入 s = "a##c", t = "#a#c" 超时

改了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-3 16:37:57 | 显示全部楼层

解答错误

输入:s = "c##vnvr",t = "c##vn#nvr"
输出:False
预期结果:True
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-3 16:47:23 | 显示全部楼层
  1. import operator

  2. def fun(s, t):
  3.       s = list(s)
  4.       t = list(t)

  5.       for i in s[:]:
  6.             if i == "#":
  7.                   s.remove(i)
  8.                   s.remove(temp)
  9.             temp = i

  10.       for i in t[:]:
  11.             if i == "#":
  12.                   t.remove(i)
  13.                   t.remove(temp)
  14.             temp = i

  15.       return operator.eq(s, t)
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-3 16:48:07 | 显示全部楼层

为什么要用 operator
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-3 16:48:51 | 显示全部楼层

输入 s = "ab##",t = "c#d#" 出错
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-3 16:50:53 | 显示全部楼层
zltzlt 发表于 2020-2-3 16:48
为什么要用 operator

判断
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-3 16:51:13 | 显示全部楼层

直接 s == t 不行?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-3 16:54:29 | 显示全部楼层
  1. def fun322(s,t):
  2.     while '#' in s:
  3.         if s.find('#')==0:s=s[1:]
  4.         index=s.find('#')
  5.         if index>=1:
  6.             s=s[:index-1]+s[index+1:]
  7.     while '#' in t:
  8.         if t.find('#')==0:t=t[1:]
  9.         index=t.find('#')
  10.         if index>=1:
  11.             t=t[:index-1]+t[index+1:]
  12.     return s==t
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-3 16:54:56 | 显示全部楼层

另外把缩进改一下
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-3 16:55:01 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-3 16:56:07 | 显示全部楼层
zltzlt 发表于 2020-2-3 16:51
直接 s == t 不行?
  1. def fun(s, t):
  2.       s = list(s)
  3.       t = list(t)

  4.       for i in s[:]:
  5.             if i == "#":
  6.                   temp = s.index(i) - 1
  7.                   s.remove(i)
  8.                   del s[temp]

  9.       for i in t[:]:
  10.             if i == "#":
  11.                   temp = t.index(i) - 1
  12.                   t.remove(i)
  13.                   del t[temp]

  14.       return s == t
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-3 16:56:52 | 显示全部楼层

把缩进改一下,改成四个空格
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-3 16:57:43 | 显示全部楼层

尴尬啊,本来以为很简单的,但是还是有很多地方没想到
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-3 16:58:23 | 显示全部楼层
fan1993423 发表于 2020-2-3 16:57
尴尬啊,本来以为很简单的,但是还是有很多地方没想到

小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-3 16:59:59 | 显示全部楼层
zltzlt 发表于 2020-2-3 16:56
把缩进改一下,改成四个空格

为什么
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-3 17:00:38 | 显示全部楼层
zltzlt 发表于 2020-2-3 16:56
把缩进改一下,改成四个空格
  1. def fun(s, t):
  2.   s = list(s)
  3.   t = list(t)

  4.   for i in s[:]:
  5.     if i == "#":
  6.       temp = s.index(i) - 1
  7.       s.remove(i)
  8.       del s[temp]

  9.   for i in t[:]:
  10.     if i == "#":
  11.       temp = t.index(i) - 1
  12.       t.remove(i)
  13.       del t[temp]

  14.   return s == t
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-3 17:01:07 | 显示全部楼层
本帖最后由 zltzlt 于 2020-2-3 17:02 编辑


你偏不改是吧……

解答错误

输入:s = "y#fo##f", t = "y#f#o##f"
输出:False
预期结果:True
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-3 17:02:33 | 显示全部楼层
zltzlt 发表于 2020-2-3 17:01
你偏不改是吧……

解答错误

改了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-7-13 04:01

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表