Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from fractions import *
- N=int(raw_input())
- arr=raw_input().split()
- intarr=[]
- Fs={}
- def F(x):
- if(Fs.get(x)==None):
- ans=0
- for i in xrange(1,x+1):
- g=gcd(i,x)
- ans=ans+int((i/g))
- Fs[x]=ans
- else:
- ans=Fs[x]
- return ans
- def solve(X,Y):
- summ=0
- for i in xrange(X,Y+1):
- summ=summ+F(intarr[i-1])
- if(summ>=1000000007):
- summ=summ-1000000007
- return summ
- for i in arr:
- intarr.append(int(i))
- Nquer=int(raw_input())
- for i in xrange(0,Nquer):
- quer=raw_input().split()
- if(quer[0]=='U'):
- intarr[int(quer[1])-1]=int(quer[2])
- else:
- ans=solve(int(quer[1]),int(quer[2]))
- print(ans)
Add Comment
Please, Sign In to add comment