Cod sursa(job #1620220)

Utilizator gorni97aaa aaa gorni97 Data 28 februarie 2016 21:55:40
Problema Sum Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.86 kb
#include <iostream>
#include <fstream>
using namespace std;

int cmmdc(int x,int y)
{
    while(x!=y)
    {if(x>y)
    x=x-y;
    else
        y=y-x;}


    return y;
}


int main()

{int i,j,n,x,s;
char v[200002];
fstream f("sum.in",ios::in);
fstream g("sum.out",ios::out);
f>>n;
for(i=1;i<=200000;i++)
    v[i]=0;


    v[2]=1;
    i=2;


    while(i<=200000)
    {j=2;

    while(j*i<=200000)
    {v[j*i]=1;
    j++;}

    i++;
    while((v[i]==0)&&(i<=200000))
    i++;
    }

    for(j=1;j<=n;j++)
    {f>>x;
    s=0;
     if(v[x]==0)
     {for(i=1;i<=2*x;i++)
        if(i%x!=0)
        s=s+i;}
        else
        {s=1;
        for(i=2;i<x;i++)
            if(cmmdc(i,x)==1)
            s=s+i;
        for(i=x+1;i<=2*x;i++)
            if(cmmdc(i,x)==1)
            s=s+i;

            }

g<<s<<'\n';
}



}