#!/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