CF594D.REQ

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Today on a math lesson the teacher told Vovochka that the Euler function of a positive integer φ(n)φ(n) is an arithmetic function that counts the positive integers less than or equal to n that are relatively prime to n. The number 11 is coprime to all the positive integers and φ(1)=1φ(1)=1 .

Now the teacher gave Vovochka an array of nn positive integers a1,a2,...,ana_{1},a_{2},...,a_{n} and a task to process qq queries lil_{i} rir_{i} — to calculate and print modulo 109+710^{9}+7 . As it is too hard for a second grade school student, you've decided to help Vovochka.

输入格式

The first line of the input contains number nn ( 1<=n<=2000001<=n<=200000 ) — the length of the array given to Vovochka. The second line contains nn integers a1,a2,...,ana_{1},a_{2},...,a_{n} ( 1<=ai<=1061<=a_{i}<=10^{6} ).

The third line contains integer qq ( 1<=q<=2000001<=q<=200000 ) — the number of queries. Next qq lines contain the queries, one per line. Each query is defined by the boundaries of the segment lil_{i} and rir_{i} ( 1<=li<=ri<=n1<=l_{i}<=r_{i}<=n ).

输出格式

Print qq numbers — the value of the Euler function for each query, calculated modulo 109+710^{9}+7 .

输入输出样例

  • 输入#1

    10
    1 2 3 4 5 6 7 8 9 10
    7
    1 1
    3 8
    5 6
    4 8
    8 10
    7 9
    7 10
    

    输出#1

    1
    4608
    8
    1536
    192
    144
    1152
    
  • 输入#2

    7
    24 63 13 52 6 10 1
    6
    3 5
    4 7
    1 7
    2 4
    3 6
    2 6
    

    输出#2

    1248
    768
    12939264
    11232
    9984
    539136
    

说明/提示

In the second sample the values are calculated like that:

  • φ(13526)=φ(4056)=1248φ(13·52·6)=φ(4056)=1248
  • φ(526101)=φ(3120)=768φ(52·6·10·1)=φ(3120)=768
  • φ(246313526101)=φ(61326720)=12939264φ(24·63·13·52·6·10·1)=φ(61326720)=12939264
  • φ(631352)=φ(42588)=11232φ(63·13·52)=φ(42588)=11232
  • φ(1352610)=φ(40560)=9984φ(13·52·6·10)=φ(40560)=9984
  • φ(631352610)=φ(2555280)=539136φ(63·13·52·6·10)=φ(2555280)=539136
首页