Cod sursa(job #1627716)

Utilizator cosmin_varlanVarlan Nicolae Cosmin cosmin_varlan Data 3 martie 2016 18:30:34
Problema Fractii Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.4 kb
#include <math.h>
#include <fstream>
#include <iostream>

using namespace std;
ifstream fin ("fractii.in");
ofstream fout ("fractii.out");

int n;
int prime[1000];
int nr_prime=0;

int verifica(int i, int j)
{
    if ((i==1)||(j==1)) return true;
    if(i==j) return false;
    int V = i<j?j:i;
    int v = i>=j?j:i;

    for(int i=0; prime[i]<=V/2; i++)
        if((v%prime[i]==0)&&(V%prime[i]==0)) return false;

    return true;
}

void prime_gen()
{
    for(int i=2; i<=1000; i++)
    {
        int prim = 1;
        for(int j=0; j<nr_prime; j++)
            prim*=(i%prime[j]);
        if(prim) prime[nr_prime++] = i;
    }
}



int main()
{

    prime_gen();
    fin >> n;
    int count1=0;
    for(int i=1; i<=n; i++)
    {
        cout << i << ": \n";
        int div[1000];
        int idx=0;
        for(int j=0; prime[j]<=i; j++)
            if(i%prime[j]==0)
            {
                div[idx]=prime[j];
                idx++;
            }

        int count_partial=0;
        for(int j=1; j<=n; j++)
        {
            for(int k=0; k<idx; k++)
                if(j%div[k]==0)
                {
                    count_partial++;
                    cout << i << "/" << j << endl;
                }

            count1 += (j-count_partial);
        }



        cout << endl;
    }


    count1++;
    cout << count1;

    return 0;
}