Cod sursa(job #34373)

Utilizator RobytzzaIonescu Robert Marius Robytzza Data 20 martie 2007 18:07:48
Problema Suma divizorilor Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.6 kb
#include<fstream.h>
#include<math.h>
long long a[200],b[500];
int main(){
ifstream fin("sumdiv.in");
ofstream fout("sumdiv.out");
long long A,B;
fin>>A>>B;
for (long i=1;i<=A/i;i++)
	if (A%i==0){
	   b[i]=1;
	   b[A/i]=1;}
long long p=1,max=-1;
for (i=0;i<=A;i++)
   if (b[i]==1)
	 for (long v=1;v<=B;v++)
	 for (long long j=0;j<=A;j++){
	   p=i;
	    if (b[j]==1){
	    for (long y=1;y<v;y++)
	      p*=j;
	    a[p]=1;
	    if (p>max)
	      max=p;}}
long long S=0;
for (long long h=0;h<=max;h++)
    if (a[h]==1)
     S+=h;
fout<<S%9901;
fin.close();
fout.close();
return 0;
}