1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include <stdio.h>
#include <stdlib.h>

int main()
{
    unsigned long long N,duplikat;
    int k,powt;
    unsigned int  primes[40];
    scanf("%d %llu",&k, &N);
    for (powt=0;powt<k;powt++){scanf("%d",&primes[powt]);}
    do
    {
        duplikat=N;
        for (powt=0;powt<k;powt++)
        {
            if (duplikat%primes[powt]==0)
            {
                duplikat=duplikat/primes[powt];
                powt--;
            }
            if (duplikat==1) break;
            //printf("%llu\n", N);
        }
         //printf("%llu\n", N);
        if (duplikat==1) {printf("%llu", N); break;}

    }
    while (N--);
    return 0;
}