• python每日练习0801


    #有一堆100块的石头,2个人轮流随机从中取1-5块,谁取最后一块就谁win,编程实现
    import random
    stones = 100
    count = 0
    while stones > 0:
        c = random.randint(1,5)
        if c > stones:
            c = stones
        if count % 2 == 0:
            print("第二个人取了%s块石头" %c)
        else:
            print("第一个个取了%s块石头" %c)
        stones -= c
        count += 1
    
    
    #实现一个方法,判断一个正整数是否是2的乘方,比如16是2的4次方,返回True;18不是2的乘方,返回False。
    #要求性能尽可能高。
    def check(n):
        count = 0
        while True:
            if 2 ** count == n:
                return True
            elif 2 ** count > n:
                return False
            else:
                count += 1
    
    print(check(18))
    print(check(8))
    print(check(2))
    
    #lista = ['a','abc','d','abc','fgi','abf'],寻找列表中出现次数最多的第一个字母,
    # 出现了几次
    lista = ['a','abc','d','abc','fgi','abf']
    lista_str = ''.join(lista)
    max_code = lista_str[0]
    max_number = lista.count(max_code)
    for letter in lista_str:
        if lista_str.count(letter) > max_number:
            max_code = letter
            max_number = lista_str.count(letter)
    
    print(max_code,max_number)
    
    #平衡点,一个数组,有一个数字左边所有的数字加起来的总和等于这个数右边所有数字的总和,请输出这个数以及坐标
    array_list = [4,3,2,8,7,2]
    for index in range(len(array_list)):
        if sum(array_list[:index]) == sum(array_list[index+1:]):
            print("平衡点的数字是:%s,平衡点的坐标是:%s" %(array_list[index],index))
            break
    else:
        print("无平衡点")
    
    #输入一个数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组
    array_list = [4,3,2,8,7,2]
    max_value = max(array_list)
    max_value_index = array_list.index(max_value)
    min_value = min(array_list)
    min_value_index = array_list.index(min_value)
    
    array_list[max_value_index],array_list[0] = array_list[0],array_list[max_value_index]
    array_list[min_value_index],array_list[-1] = array_list[-1],array_list[min_value_index]
    print(array_list)
    
    #给定一个数组和数,求出数组中两个数的和等于给定的数,并返回坐标
    def findIndex(nums,target):
        result ={}
        for index in range(len(nums)):
            second_num = target - nums[index]
            if nums[index] in result:
                print(result)
                return result[nums[index]],index
            else:
                result[second_num] = index
    
    print(findIndex([4,3,2,8,7,2],10))
  • 相关阅读:
    XSS
    XSS
    检查空引用
    LockInt
    Unity Shaderlab: Object Outlines 转
    git 恢复单个文件的历史版本
    烽火HG220G-U E00L2.03M2000光猫改桥接教程
    mark mem
    转 class和struct最本质的区别
    unity shader base pass and additional pass
  • 原文地址:https://www.cnblogs.com/ff-gaofeng/p/11281080.html
Copyright © 2020-2023  润新知