fwxxx 发表于 2020-3-3 20:46:54

zltzlt 发表于 2020-3-3 20:45
56 ms

嘿嘿

风魔孤行者 发表于 2020-3-3 20:53:26

zltzlt 发表于 2020-3-3 20:42
解答错误

输入:"ivicc"


{:5_106:}
这回应该好了string = input('请输入字符:')

def judge(string):
    list1 = []
    n=0

    while string != '':
      list1.append(string.count(string))
      string = string.replace(string,'')

    for each in list1:
      if each%2 != 0:
            n += 1

    if n>1:
      return False
    else:
      return True

print(judge(string))

TJBEST 发表于 2020-3-3 20:55:27

来晚了,第一拿不了了
def fun342(string):
    dic = dict()
    M = len(string)
    for each in string:
      try:
            dic += 1
      except Exception:
            dic = 1
    if M % 2 == 0:
      for eachKey in dic:
            if dic%2 != 0:
                return False
            else:
                pass
      return True
    else:
      state = 2
      for eachKey in dic:
            if dic%2 != 0:
                state -= 1
            if state == 0:
                return False
      return True

zltzlt 发表于 2020-3-3 20:55:32

风魔孤行者 发表于 2020-3-3 20:53
这回应该好了

36 ms{:5_106:}

zltzlt 发表于 2020-3-3 20:56:04

TJBEST 发表于 2020-3-3 20:55
来晚了,第一拿不了了

48 ms

fan1993423 发表于 2020-3-3 21:00:01

明天出个有挑战性的题吧{:10_333:}

kinkon 发表于 2020-3-3 21:05:07

本帖最后由 kinkon 于 2020-3-3 21:39 编辑

感觉还是第一种方法快一点,少了个循环
def f342(s):
    sset, c = set(s), 0   
    if len(s)%len(sset) == 0:return True
    for i in sset:
      if s.count(i)%2:
            c += 1                  
    return True if c == 1 else False
         
def p342(s):               
    sset, d, c = set(s), {}, 0
    if len(s)%len(sset) == 0:return True   
    for i in s:
      if i not in d:
            d = 1
      else:
            d += 1               
    for d in d.values():
      if d%2:
            c += 1            
    return True if c == 1 else False

zltzlt 发表于 2020-3-3 21:05:49

fan1993423 发表于 2020-3-3 21:00
明天出个有挑战性的题吧

嗯嗯{:10_282:}

zltzlt 发表于 2020-3-3 21:06:40

kinkon 发表于 2020-3-3 21:05


解答错误

输入:"a"
输出:False
预期结果:True

"a" 本身就是回文字符串

蒋博文 发表于 2020-3-3 21:07:50

def fun342(huiwen):
    a = {}
    b = 0
    for i in huiwen:
      if i not in a.keys():
            a = 0
      else:
            a += 1
    for i in a.values():
      if(i % 2==0):
            b += 1
    if b > 1:
      return False
    else:
      returnTrue
应该不会超时,管它呢,先试试{:10_282:}

zltzlt 发表于 2020-3-3 21:16:53

wcshds 发表于 2020-3-3 20:40


40 ms

l0stparadise 发表于 2020-3-3 21:18:53

def f342():
    str1=input("输入字符串:")
    n=0
    for each_str in str1:
      ifstr1.count(each_str)%2:
            n+=1
    if n>1:
      return False
    else:
      return True

zltzlt 发表于 2020-3-3 21:19:10

蒋博文 发表于 2020-3-3 21:07
应该不会超时,管它呢,先试试

40 ms

你是参考这位鱼油的?

ouyunfu 发表于 2020-3-3 21:19:27

本帖最后由 ouyunfu 于 2020-3-3 21:49 编辑

def f342(s:str)->bool:
    m=.count(1)
    return True if m==0 or m==1 else False

蒋博文 发表于 2020-3-3 21:21:09

zltzlt 发表于 2020-3-3 21:19
40 ms

你是参考这位鱼油的?

没有啊。我打代码之前没有看任何人的,我保证

zltzlt 发表于 2020-3-3 21:21:37

蒋博文 发表于 2020-3-3 21:21
没有啊。我打代码之前没有看任何人的,我保证

感觉有点像而已

蒋博文 发表于 2020-3-3 21:22:43

zltzlt 发表于 2020-3-3 21:19
40 ms

你是参考这位鱼油的?

再者说了,他的那个方法我见过,是我哥查过的一种方式,我用的是我自己琢磨出来的{:10_249:}

kinkon 发表于 2020-3-3 21:24:29

zltzlt 发表于 2020-3-3 21:06
解答错误

输入:"a"


已改,67楼

zltzlt 发表于 2020-3-3 21:25:57

kinkon 发表于 2020-3-3 21:05
感觉还是第一种方法快一点,少了个循环

解答错误

输入:"aa"
输出:False
预期结果:True

kinkon 发表于 2020-3-3 21:33:13

本帖最后由 kinkon 于 2020-3-3 21:34 编辑

zltzlt 发表于 2020-3-3 21:25
解答错误

输入:"aa"


好了,加了个条件,做事不认真,18楼
页: 1 2 3 [4] 5 6 7
查看完整版本: Python:每日一题 342