Cod sursa(job #3280987)
| Utilizator | Data | 28 februarie 2025 00:08:59 | |
|---|---|---|---|
| Problema | Suma si numarul divizorilor | Scor | 40 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.73 kb |
#include<fstream>
using namespace std ;
ifstream cin("ssnd.in");
ofstream cout("ssnd.out");
int NrDiv(long long n ){
int cnt = 0 ;
for(int i = 1 ; i * i <= n ; i ++ ){
if(n%i==0){
cnt ++ ;
if(i*i<n)
cnt ++ ;
}
}
return cnt ;
}
long long Sdiv(long long n ){
long long s = 0 ;
for(int i = 1 ; i * i <= n ; i ++ ){
if(n%i==0){
s+=i;
if(i*i<n)
s+=n/i;
}
}
return s ;
}
int main(){
long long n , x ;
cin>>n;
for(int i = 1 ; i <= n ; i ++ ){
cin>>x;
cout<<NrDiv(x)<< ' '<<Sdiv(x)%9973<<endl;
}
return 0 ;
}