study Python 18day

#!/usr/bin/python
while True:
	try:
		num=int(input())
		w=list(map(int,input().split()))
		number=list(map(int,input().split()))
		prev=[0]
		for i in range(num):
			res=[]
			for j in range(number[i]+1):
				for item in prev:
					res.append(item+j*w[i])
			res=set(res)
			prev=list(res)
		print(len(res))
	except:
		break
from collection import Counter
while True:
	try:
		a=int(input())
		for i in range(a):
			c,start,res=Counter(input()),26,0
			for j in c.most_common():
				res+=j[1]*start
				start-=1
			print(res)
			
	except:
		break

while True:
	try:
		a,b=input().split()
		print(a[:int(b)])
		
	except:
		break
while True:
	try:
		print('ABCD'*int(input()))
		
	except:
		break
print(eval(input()))

while True:
	try:
		a,b,c=input(),input().split(),int(input())
		pirnt(a[-c] if c!=0 else 0)
	except:
		break
		
while True:
	try:
		st1=input()
		st2=input()
		if len(st1)<len(st2):
			st1,st2=st2,st1
		m=len(st1)
		n=len(st2)
		res=[[0 for i in range(m+1)] for i in range(n+1)]
		
		for i in range(n+1):
			res[i][0]=i
		for j in range(m+1):
			res[0][i]=j
		for i in range(1,n+1):
			for j in range(1,m+1):
				if st1[j-1]==st2[i-1]:
					res[i][j]=res[i-1][j-1]
				else:
					res[i][j]=min(res[i-1][j-2]+1,res[i-1][j]+1,res[i][j-1]+1)
	
		print(res[n][m])
	except:
		break

		
while True:
	try:
		string=sys.stdin.readline()
		line=int(string)
	
	
		if line=1 or line==2:
			print(-1)
		elif line==3:
			print(2)
		elif line%4==1 or line%4==3:
			print(2)
		elif line%4==2:
			print(4)
		else:
			print(3)
	except:
		break
		
print(eval(input()))

while True:
	try:
		a=int(input())
		count=0
		for i in range(1,a+1):
			if i%7==0:
				count+=1
			elif '7' in str(i):
				count+=1
			else:
				continue
		print(count)
	except:
		break

	try:
		count=int(input().split()[1])
		array=list(map(int,input().strip().split()))
		print(' '.join(map(str,sorted(array)[:count])))
	except:
		break
		
while True:
	try:
		from collections import Counter
		a=input()
		c=list(map(lambda c:c[0],list(filter(lambda c:c[1]==1,Count(a).most_common()))))
		if not c:print(-1)
		for i in a:
			if i in c:
				print(i)
				break
	except:
		break
		
import math
def isPrime(n):
	for i in range(2,int(math.sqrt(n)+1)):
		fi n%i==0:
			return False
	return True

	
import math
def isPrime(n):
	for i in range(2,int(math.sqrt(n)+1)):
		fi n%i==0:
			return False
	return True

while True:
	try:
		num,start=int(input())
		if num%2==1:
			start=0
		for i in range(start,num,2):
			a,b=num+i,num-i
			if isPrime(a) and isPrime(b):
				print(b)
				print(a)
				break
	except:
		break
		
while True:
	try:
		print(bin(int(input())).count('1'))
	except:
		break
		
while True:
	try:
		a,b=input(),int(input())
		maxStr,maxCnt=a[:b],a[:b]
		
		elif len(alpht_list)!=0 and len(digit_list)!=0 and len(symbol_list)!=0:
			res+=3
		elif sum==2 and len(digit_list)!=0 and len(symbol_list)!=0
		
		
			res+=5
		else:
			pass
		if res>=90:
			print('VERY_SECURE')
		elif res>=80:
			print('SECURE')
		elif res>=70:
			print('VERY_STRONG')
		elif res>=60:
			print('STRONG')
		elif res>=50:
			print('AVERAGE')
			
		elif res>=25:
			print('WEAK')
		else:
			print('VERY_WEAK')
	except:
		break

while True:
	try:
		nums=list(map(int,input().split('.')))
		flag=0
		for i in range(len(nums)):
			if nums[i]<0 or nums[i]>255:
				flag=1
			else:
				pass
		if flag==0:
			print('yes')
		else:
			print('no')
	except:
		break
		
def run(n,m):
	if n==0 or m==0:
		return 1
	else:
		return run(n-1,m)+run(n,m-1)
	
while True:
	try:
		n,m=map(int,input().split())
		print(run(n,m))
	except:
		break

					curstr=''
			print(''.join(maxstrs)+','+str(maxlen))
	except:
		break
		
def part_data(data_list):
	part1=list()
	part2=list()
	part3=list()
	for data in data_list:
		if data%5==0:
			part1.append(data)
		elif data%3==0:
			part2.append(data)
		else:
			part3.append(data)
	diff=sum(part1)-sum(part2)
	if(sum(part3)-diff)%2!=0:
		return False
	target=(sum(part3)-diff)/2
	res=search(part3,target)
	return res

def search(data_list,target):
	if len(data_list)==1:
		return data_list[0]=target
	else:
		data=data_list.pop()
		if data==target:
			ruturn True
		if search(data_list,target-data):
			return True
		if search(data_list,target):
			return True
		data_list.append(data)

while True:
	try:
		n=int(input().split())
		data_list=list(map(int,input().strip().split()))
		
		res=part_data(data_list)
		print('true' if res== True else 'false')
	except:
		break
while True:
    try:
        n = int(raw_input())
        a = range(n + 1)
        order = raw_input()
 
        head, tail, i = 1, 4, 1
        if n <= 4:
            for s in order:
                if s == 'U':
                    if i == 1:
                        i = n
                    else:
                        i -= 1
                else:
                    if i == n:
                        i = 1
                    else:
                        i += 1
            head, tail = 1, n
        else:
            for s in order:
                if s == 'U':
                    if i == 1:
                        i = n
                        head, tail = n - 3, n
                    else:
                        i -= 1
                        if i < head:
                            head, tail = i, i + 3
                else:
                    if i == n:
                        i = 1
                        head, tail = 1, 4
                    else:
                        i += 1
                        if i > tail:
                            head, tail = i - 3, i
        ans = range(head, tail + 1)
        print(' '.join([str(j) for j in ans]))
        print( i)
    except:
        break

while True:
    try:
        s1=raw_input()
        s2=raw_input()
        count=0
        idx=[0,1]
        n,m=len(s1),len(s2)
        if n<m:
            for i in range(n):
                for j in range(i,n):
                    if s1[i:j+1] in s2:
                        if j+1-i>count:
                            count=j+1-i
                            idx[0]=i
                            idx[1]=j+1
            print(s1[idx[0]:idx[1]])
        else:
            for i in range(m):
                for j in range(i,m):
                    if s2[i:j+1] in s1:
                        if j+1-i>count:
                            count=j+1-i
                            idx[0]=i
                            idx[1]=j+1
            print(s2[idx[0]:idx[1]])                
    except:
        break

###This  is  a   copy   of    Orli有异议   ####
import sys
  
def checkTwoKeys(twoKeys,a,result):
    count = 0
    index = 0
    for y in twoKeys:
        if a[0]==y.split()[0][:len(a[0])] and a[1]==y.split()[1][:len(a[1])]:
            count += 1
            index = twoKeys.index(y)
    if count > 1 or count == 0:
        print("unkown command")
    elif count == 1:
        print(result[index])
              
oneKey = 'reset'
twoKeys = ['reset board','reboot backplane','backplane abort','board add','board delete']
result = ['board fault','impossible','install first','where to add','no board at all']
for i in sys.stdin:
    a = i.strip().split()
    l = len(a)
    if l <= 0 or l>=3:
        print("unkown command")
    elif l == 1:
        if a[0] == oneKey[:len(a[0])]:
            print("reset what")
        else:
            print("unkown command")
    elif l == 2:
        checkTwoKeys(twoKeys,a,result)

def trans(num,x):
    total = 0
    if len(x) == 1:
        if abs(num-x[0]) < 0.001:
            return 1
        else:
            return 0
    else:
        for i in range(len(x)):
            a = x[i]
            b = x[:]
            b.pop(i)
            total += trans(num-a, b) + trans(num+a, b) + trans(num*a, b) + trans(num/a, b)
        return total
  
while True:
    try:
        nums = raw_input().strip().split()
        num = [float(i) for i in nums]
        total = trans(24.0,num)
        if total == 0:
            print 'false'
        else:
            print 'true'
              
    except:
        break
发布了65 篇原创文章 · 获赞 0 · 访问量 559

猜你喜欢

转载自blog.csdn.net/u011624267/article/details/103847871