ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

python每日例题527

2022-05-28 08:33:22  阅读:181  来源: 互联网

标签:count 字符 python list len 列表 527 input 例题


638 · 字符同构

给定两个字符串 s 和 t ,确定它们是否是同构的。
两个字符串是同构的如果 s 中的字符可以被替换得到 t。所有出现的字符必须用另一个字符代替,同时保留字符串的顺序。 没有两个字符可以映射到同一个字符,但一个字符可以映射到自己。

样例 1 :

输入 : s = "egg", t = "add"
输出 : true 
说明 : 
e -> a, g -> d。

样例 2 :

输入 : s = "foo", t = "bar"
输出 : false 
说明 : 
没有方案。

样例 3 :

输入 : s = "paper", t = "title"
输出 : true 
说明 :
p -> t, a -> i, e -> l, r -> e。
class Solution(object):
    def isIsomorphic(self, s, t):
        """
        :type s: str
        :type t: str
        :rtype: bool
        """
        # hash 方法
        if len(s) != len(t):
            return False
        if len(s) == None or len(s) < 2:
            return True
        # 使用哈希映射记录每个字母的转换方法,键:s的字母,值:t的字母
        smap = {}
        for i in range(len(s)):
            # 如果s[i]不在键中,但t[i]出现在字典的值中,说明出现了s=ab,t=aa这种情况
            if s[i] not in smap and t[i] in smap.values():
                return False
            # 如果s[i]已在键中,且t[i]与键s[i]的值不对应,说明出现了s=aa,t=ab这种情况
            if s[i] in smap and smap[s[i]] != t[i]:
                return False
            # 仅有以上两种情况需要输出False,如果不满足以上两种情况,则添加键值对
            smap[s[i]] = t[i]
        # 循环走完说明s和t中每个字母都有唯一的对应关系,可以输出True
        return True


solution = Solution()
print(solution.isIsomorphic('paper', 'title'))

2960 · 定义一个函数

def my_name():
    return 'hello'

2959 · 求各列表中最大值的平均值

给定一个列表 list_1,里面嵌套了多个列表,请你计算出每个嵌套列表的最大值,并输出所有最大值的平均值。

names = eval(input())
sum1 = 0
count = 0
for i in range(len(names)):
    //从大到小排序
    list.sort(names[i])
    names[i].reverse()
    sum1 = names[i][0] + sum1
    count = count +1
avg =sum1/count
print("%.2f" % avg)

2958 · 取出列表中的数字进行运算 

给定一个列表 list_1,里面有四个字符数字,请你将这四个字符数字转换成整型数字进行下列的运算:

a/b*(c+d)

list_1 = eval(input())
# 主要是学会列表字符串对于整型的转换
results = list(map(int, list_1))
result = results[0]/results[1]*(results[2]+results[3])
print("%.2f" % result)

2956 · 判断是否有优惠 

店铺周年庆,给定一个所有商品列表,商品名以 j、z、d、f 和 h 开头的将会打折扣,请你统计一下打折扣的商品,并以列表的方式打印到控制台。

list_1 = eval(input())
# Please write your code here
list_2 = []
list_check = ['j', 'z', 'd', 'f', 'h']
for i in range(len(list_1)):
    if list_1[i][0] in list_check:
        list_2.append(list_1[i])

print(list_2)

2951 · 求直角三角形的一条直角边

import math
# Get a, c
a = int(input())
c = int(input())
b=max(a,c)
d=min(a,c)
# Please write your code here
b = math.sqrt( pow(b, 2)-pow(d, 2) )
print('%.f' % b)

2949 · 找出出现奇数次的数字

给定一个列表 list_1,里面有且仅有一个数字出现奇数次,其他数均出现偶数次,请你找出这个数字并打印出来。

# Get List
list_1 = eval(input())
count = 0
# Please write your code here
for i in range(len(list_1)):
    count = list_1.count(list_1[i])
    if count % 2 != 0:
        print(list_1[i])
        break

 

标签:count,字符,python,list,len,列表,527,input,例题
来源: https://www.cnblogs.com/changethewld/p/16319786.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有