Cod sursa(job #3286195)

Utilizator rapidu36Victor Manz rapidu36 Data 13 martie 2025 20:09:02
Problema Pairs Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.29 kb
#include <fstream>
#include <vector>
#include <bitset>

using namespace std;

const int VMAX = 1e6;
const int NDP = 1;

bitset <VMAX + 1> in_M;
int nr_mult[VMAX+1];
int div_primi[VMAX+1][NDP+1];


void ciur()
{
    for (int i = 2; i <= VMAX; i++)
    {
        for (int mult = i; mult <= VMAX; mult += i)
        {
            if (in_M[mult])
            {
                nr_mult[i]++;
            }
        }

        if (div_primi[i][0] == 0)///i este prim
        {
            for (int mult = i; mult <= VMAX; mult += i)
            {
                ++div_primi[mult][0];
                //div_primi[mult][div_primi[mult][0]] = i;
            }
        }
    }
}

int main()
{
    ifstream in("pairs.in");
    ofstream out("pairs.out");
    int n;
    in >> n;
    for (int i = 0; i < n; i++)
    {
        int aux;
        in >> aux;
        in_M[aux] = 1;
    }
    ciur();
    /*
    for (int i = 2; i <= 15; i++)
    {
        out << i << " are " << nr_mult[i] << "\n";
    }
    for (int i = 2; i <= 15; i++)
    {
        out << i << ": ";
        for (int j = 1; j <= div_primi[i][0]; j++)
        {
            out << div_primi[i][j] << " ";
        }
        out << "\n";
    }
    */
    in.close();
    out.close();
    return 0;
}