Pagini recente » Cod sursa (job #2830315) | Cod sursa (job #2347487) | Cod sursa (job #2319461) | Cod sursa (job #2157741) | Cod sursa (job #995703)
Cod sursa(job #995703)
#include<fstream>
#define ll long long
using namespace std;
ifstream f("light2.in");
ofstream g("light2.out");
int i,k;
ll sol,n;
int d[30];
inline ll gcd(ll a,ll b)
{
ll r;
while(b)
{
r=a%b;
a=b;
b=r;
}
return a;
}
inline void rez(int p,ll x,int s,int put2)
{
ll y;
for(int i=p+1;i<=k;++i)
{
y=x*d[i]/gcd(x,d[i]);
sol+=n/y*s*put2;
rez(i,y,-s,2*put2);
}
}
int main()
{
f>>n>>k;
for(i=1;i<=k;++i)
{
f>>d[i];
}
for(i=1;i<=k;++i)
{
sol+=n/d[i];
rez(i,d[i],-1,2);
}
g<<sol<<'\n';
return 0;
}