Cod sursa(job #2799179)

Utilizator TudosieRazvanTudosie Marius-Razvan TudosieRazvan Data 12 noiembrie 2021 16:46:37
Problema Suma si numarul divizorilor Scor 10
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.86 kb
#include <fstream>
#include <climits>
#include <vector>
#include <queue>
#include <set>
#include <stack>
#include <string>
#include<bitset>
#include <map>
#include <cstring>
#include<algorithm>

using namespace std;


int n;
int sMax, stMax, drMax, sum;

ifstream fin("ssnd.in");
ofstream fout("ssnd.out");

void sumNumDiv(int val)
{
    if(val<2)
    {
        fout<<"1 "<<val;
        return;
    }
    int sum=1+val,div=2;
    for(int i=2; i*i<=val; i++)
    {
        if(val%i==0)
        {
            div+=2;
            sum+=i+val/i;
            if(i*i==val)
            {
                sum-=i;
                div--;
            }
        }
    }
    fout<<div<<" "<<sum<<"\n";
}

int main()
{


	fin >> n;
	for(int i=1; i<=n; i++)
    {
        int x;
        fin>>x;
        sumNumDiv(x);
    }
	return 0;

}