Cod sursa(job #613396)

Utilizator tsubyRazvan Idomir tsuby Data 23 septembrie 2011 23:23:24
Problema Suma si numarul divizorilor Scor 40
Compilator cpp Status done
Runda Arhiva educationala Marime 0.65 kb
#include <cstdio>

using namespace std;

int cardinal(int x)
{
    int nr=0;
    int d;
    for(d=1;d*d<x;d++)
        if(!(x%d))
            nr+=2;
    if(d*d == x)
        nr++;
    return nr;
}

int suma(int x)
{
    int s=0,d=1;
    for(;d*d<x;d++)
        if(x%d==0)
            s+=d+x/d;
    if(x==d*d)
        s+=d;
    return (s%9973);
}
int main()
{
    freopen("ssnd.in","r",stdin);
    freopen("ssnd.out","w",stdout);
    int n,a;
    scanf("%d",&n);
    for(int i=0;i<n;i++)
    {
        scanf("%d",&a);
        printf("%d ",cardinal(a));
        printf("%d ",suma(a));
        printf("\n");
    }
    return 0;
}