python学习
2021-02-21 03:18
阅读:776
标签:排列 循环输出 n+1 最小值 组成 使用权 lru算法 print break
用户输入整数n(1
"""
用户输入整数n(1"""
from itertools import combinations#引入组合模块
from itertools import permutations#引入排列模块
num1,num2 = input().split()
# 获取输入的数字
num1 = int(num1)
num2 = int(num2)
s = input()
# 获取输入的字母
# print("num1:%d num2:%d"%(num1,num2))
# print(a)
list_1 = ""
for str in s.split():
# print(str)
list_1+=str
# print(list_1)
# print(list(permutations(list_1,num2)))
# 调用排列函数
print("Permutation:")
for i in list(permutations(list_1,num2)):
# 循环输出
list_per = ""
for str in i:
list_per += str
list_per += " "
print(list_per)
print("Combination:")
for i in list(combinations(list_1,num2)):
# 排序
list_com = ""
for s in i:
list_com+=s
# 转化为list数组
l = list(list_com)
# 对list数组进行排序
l.sort()
# 重新加入字符串
list_com = "".join(l)
list_com_paixu = ""
# 输出
for str in list_com:
list_com_paixu+=str
list_com_paixu+=" "
print(list_com_paixu)
""" 用户输入整数n(1""" from itertools import combinations#引入组合模块 from itertools import permutations#引入排列模块 num1,num2 = input().split() # 获取输入的数字 num1 = int(num1) num2 = int(num2) s = input() # 获取输入的字母 # print("num1:%d num2:%d"%(num1,num2)) # print(a) list_1 = "" for str in s.split(): # print(str) list_1+=str # print(list_1) # print(list(permutations(list_1,num2))) # 调用排列函数 print("Permutation:") for i in list(permutations(list_1,num2)): # 循环输出 list_per = "" for str in i: list_per += str list_per += " " print(list_per) print("Combination:") for i in list(combinations(list_1,num2)): # 排序 list_com = "" for s in i: list_com+=s # 转化为list数组 l = list(list_com) # 对list数组进行排序 l.sort() # 重新加入字符串 list_com = "".join(l) list_com_paixu = "" # 输出 for str in list_com: list_com_paixu+=str list_com_paixu+=" " print(list_com_paixu)
输入掷飞镖次数,然后输出圆周率近似值
""" 输入掷飞镖次数,然后输出圆周率近似值 """ # 引入随机数模块,可以获取随机数 import random # 输入次数 num = int(input()) # 计数器,计算在圆里面的次数 num_in = 0 for i in range(num): # 随机获取0到2之间的浮点数 x = random.uniform(0,2) y = random.uniform(0,2) # 计算两点间距离的平方 distence = (x-1.0)*(x-1.0)+(y-1.0)*(y-1.0) # print(distence) if (distence): num_in = num_in+1 rate_yuan = num_in/num # 输出圆周率的计算值 print(rate_yuan*4)
使用各位数字能组成的最大数减去能组成的最小数,对得到的差重复这个操作,最终会得到6174这个数字,并且这个操作最多不会超过7次
""" 使用各位数字能组成的最大数减去能组成的最小数,对得到的差重复这个操作,最终会得到6174这个数字,并且这个操作最多不会超过7次 """ # 输入四位数 num = input() for i in range(10): # 循环到当num的值等于6174时退出 if(int(num)==6174): break # print("第%d次:"%(i+1)) # 获取最大值 list_bigNum = list(num) list_bigNum.sort(reverse=True) bigNum = "".join(list_bigNum) # print(bigNum) # 获取最小值 list_smallNum = list(num) list_smallNum.sort() smallNum = "".join(list_smallNum) # print(smallNum) value = int(bigNum) - int(smallNum) print(value) # 重新赋值 num = str(value)
一进程获得n个主存块的使用权,对于给定的进程访问页面次序,问当采用LRU算法时,输出发生的缺页次数,在第一行中输入进程获得使用权的主存块数量n。 在第二行中输入进程访问页面的次序,各数据之间以空格为间隔。
""" 一进程获得n个主存块的使用权,对于给定的进程访问页面次序,问当采用LRU算法时,输出发生的缺页次数 在第一行中输入进程获得使用权的主存块数量n。 在第二行中输入进程访问页面的次序,各数据之间以空格为间隔。 """ # 输入主存块数量 n = int(input()) # 输入进程访问次序 list_num = list(input().split()) list_block = "" num = 0 for i in list_num: # print(i) if(list_block.__len__()n): list_block+=i elif(i in list_block): # 当主存块中包含i时 # 临时声明一个list,去除i list_pre = list(list_block) list_pre.remove(i) list_block = ‘‘.join(list_pre) list_block += i else: # 当不包含时,删除第一位 num+=1 list_pre = list(list_block) list_pre.remove(list_block[0]) list_block = ‘‘.join(list_pre) list_block += i print(num) # str = str(3) # print(str in list_block)
python学习
标签:排列 循环输出 n+1 最小值 组成 使用权 lru算法 print break
原文地址:https://www.cnblogs.com/msdog/p/12678752.html
下一篇:《排序算法系列3》插入排序
评论
亲,登录后才可以留言!