Cod sursa(job #2933020)
Utilizator | Feraru Rares-Serban PsyDuck1914 | Data | 4 noiembrie 2022 15:01:51 |
---|---|---|---|
Problema | Sum | Scor | 70 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.51 kb |
#include <fstream>
#include <iostream>
using namespace std;
ifstream f ("sum.in");
ofstream g ("sum.out");
const int NMAX = 1e5;
int c[NMAX*2+2];
void precalcul(){
for(int i=1; i<=NMAX; i++)
c[i] = i;
for(int i=2; i<=NMAX; i++)
if(c[i] == i)
for(int j=i; j<=NMAX; j+=i)
c[j] = c[j]/i*(i-1);
}
int main()
{
precalcul();
int n;
f>>n;
for(int i=1; i<=n; i++){
int k;
f>>k;
g<<c[k]*k*2<<"\n";
}
return 0;
}