Pagini recente » Cod sursa (job #2326432) | Cod sursa (job #1105841) | Cod sursa (job #1422044) | Cod sursa (job #2823935) | Cod sursa (job #846091)
Cod sursa(job #846091)
//var II cu formula
#include <fstream>
using namespace std;
ifstream f("sum.in");
ofstream g("sum.out");
int e[200003],n,x,y,d,i,j,t;
long long s;
int main()
{
f>>n;
for(i=1;i<=n;i++) e[i]=i;
for(i=2;i<=n;i++)
if(e[i]==i)
for(j=i;j<=n;j=i+j)
e[j]=e[j]/i*(i-1);
for(i=1;i<=n;i++) {
f>>x;
s=2*x*e[x];
g<<s<<'\n';
}
g.close();
return 0;
}
//var I 55p (nu se incadreaza in timp)
//se descompune x in factori si se elimina
//din vector toti multipli factorilor
#include <fstream>
using namespace std;
ifstream f("sum.in");
ofstream g("sum.out");
int e[200003],n,x,y,d,i,j,t;
long long s;
int main()
{
f>>n;
for(t=1;t<=n;t++){
f>>x;y=2*x;
for(i=1;i<=y;i++)e[i]=0;
d=2;
while(x!=1){
if(x%d==0){
for(i=d;i<=y;i=i+d)e[i]=1;
while(x%d==0)x=x/d;
}
d++;
}
for(s=0,i=1;i<=y;i++)
if(e[i]==0)s+=i;
g<<s<<'\n';
}
g.close();
return 0;
}