Cod sursa(job #538476)

Utilizator Antonius74Antonius Cezar Hegyes Antonius74 Data 21 februarie 2011 15:47:02
Problema Fractii Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.76 kb
#include <cstdio>
#include <vector>

using namespace std;

int main()
{	
	freopen ("fractii.in","r", stdin);
	freopen ("fractii.out","w", stdout);

	int n,anz=0,r,a,b;
	vector <int> zahlen;
	scanf ("%d", &n);

	zahlen.resize (n+1);
	anz+=n;

	for (int i=2;i<=n;i++)
	{
		for (int i=1;i<=n;i++)
			zahlen[i]=1;
		for (int j=1;j<=n;j++)
		{
			if (zahlen[j]==0 || (i%2==0 && j%2==0))
				continue;
			else
				if (((i%2==0 && j%2!=0) || (i%2!=0 && j%2==0)) && i%j!=0)
					anz++;
				else
				{
					a=i;
					b=j;
					do
					{
						r=a%b;
						a=b;
						b=r;
					}while (r!=0);
					if (a==1)
						anz++;
					else
						for (int t=j;t<=n;t+=j)
							zahlen[t]=0;	
				}
	
				
		}
	}

		
	printf ("%d \n", anz);
	
}