Cod sursa(job #3203001)

Utilizator thinkphpAdrian Statescu thinkphp Data 12 februarie 2024 20:35:21
Problema Sum Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.68 kb
#include<stdio.h>
#include<math.h>

long v[100001], u[100001];

long long unsigned n, contor, nr, x;

void eratostene()
{
  long long i,j;
  for(i=2;i<=100000;i++) v[i]=i;

  for(i=2;i<=100000;i++)
   {
    if(i>100000) break;
    if(u[i]==0)
     {
      j=2;
      v[i]--;
      while(i*j<=100000)
	{
	  u[i*j]=1;
	  v[i*j]=v[i*j]-v[i*j]/i;
	  j++;
	}

       }
    }
}



void prelucrare2()
{
   long long unsigned i, s1;
   freopen("sum.in","r",stdin);
   freopen("sum.out","w",stdout);
   scanf("%llu",&n);
   eratostene(); 
   for (i=1; i<=n; i++)
     {
        scanf("%llu",&x);
	s1=(v[x]*x);
      s1*=2;
      printf("%llu\n",s1);
     }
}




int main()
{
  prelucrare2();
  return 0;
}