用户输入整数n(1<=n<=26)和整数m(m<=n),然后输入n个不同的字母,请编写程序输出在这n个字母中选择m个字母的所有排列序列和组合序列。
"""
用户输入整数n(1<=n<=26)和整数m(m<=n),然后输入n个不同的字母,
请编写程序输出在这n个字母中选择m个字母的所有排列序列和组合序列。
"""
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<=1):
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)