Pagini recente » Cod sursa (job #880984) | Cod sursa (job #1372584) | Cod sursa (job #1364348) | Cod sursa (job #2050552) | Cod sursa (job #541632)
Cod sursa(job #541632)
#include<stdio.h>
int N,K,v[203],q,rez;
int euc(int a,int b)
{
if(b==0) return a;
else return euc(b,a%b);
}
int cmmmc(int a,int b)
{
return a*b/euc(a,b);
}
int desc(int x)
{
int k=1;
int S=1;
int P=1;
q=0;
while(x)
{//printf("%d",x%2);
if(x%2==1)
{++q;
if(q==1)
S=v[k];
else
S=cmmmc(S,v[k]);
}
x=x/2;
++k;
}
if(q%2==1)
rez+=(N/S)*(1<<(q-1));
else rez-=(N/S)*(1<<(q-1));
}
int main()
{
freopen("light2.in","r",stdin);
freopen("light2.out","w",stdout);
scanf("%d%d",&N,&K);
for(int i=1;i<=K;++i)
scanf("%d",&v[i]);
for(int i=1;i<=(1<<K)-1;++i)
{
desc(i);
}
printf("%d\n",rez);
}