• 算法基础篇一


    1.打印出所有不超过n(n<256)的,其平方具有对称性质的数。如11*11=121.

    for  i  in range(1,256):
        if  str(i**2)==str(i**2)[::-1]:##注意是平方
            print(i)

    解释:如果逆序之后和原来的结果相同的话那么说明是具有对称性质的数,从1开始取,0的平方也是0,原来的字符串和逆序之后的字符串相等的话说明是对称的。

     2.某人有8 角的邮票5 张,1 元的邮票4 张,1 元8 角的邮票6 张,用这些邮票中的一张或若干张可以得到多少中不同的邮资?

    res=[]
    for  x  in  range(6):
        for  y  in  range(5):
            for  z in  range(7):
                res.append(x*8+y*10+z*18)
    print(len(set(res))-1)

    解释:set就是会将重复的字符给去掉,得到不重复的

    3.判断正反序列

    for  i in range(1000,10000):
        if  str(i)==str(i*9)[::-1]:
            print(i)

     4.判断等差数列

    def  get_res(nums):
        nums.sort()
        d=nums[1]-nums[0]
        for  i in range(len(nums)-1):
            if  nums[i+1]!=nums[i]+d:
                return 'Impossible'
        return    'Possible'
    
    n=int(input())
    l1=list(map(int,input().split(' ')))
    print(get_res(l1))

    5.交错01取最长

    def   get_max_length(nums):
        if   len(nums)==0:
            return   0
        d=1
        res=0##初始化res为0
        for  i in  range(len(nums)-1):
            if  nums[i+1]!=nums[i]:
                d+=1
            else:
                d=1
            res=max(res,d)##将每次的最大值取出来
        return   res
    num=str(input())
    res=get_max_length(num)
    print(res)
  • 相关阅读:
    memory consistency
    网页基础
    ECC
    RSA
    argparse模块
    009-MySQL循环while、repeat、loop使用
    001-mac搭建Python开发环境、Anaconda、zsh兼容
    013-在 Shell 脚本中调用另一个 Shell 脚本的三种方式
    012-Shell 提示确认(Y / N,YES / NO)
    014-docker-终端获取 docker 容器(container)的 ip 地址
  • 原文地址:https://www.cnblogs.com/yunxintryyoubest/p/10810773.html
Copyright © 2020-2023  润新知