Analysis
According to the given code ::
long long H(int n){
long long res = 0;
for( int i = 1; i <= n; i=i+1 ){
res = (res + n/i);
}
return res;
}
We can get for n=20 is ::
20+10+6+5+4+3+2+2+2+2+1+1+1+1+1+1+1+1+1+1
= 20+10+6+5+4+3+8+10
= 20+10+6+5+10+8+4+3
= 20+10+6+5+1*(20-10)+2*(10-6)+3*(6-5)+4*(5-4)
= 20+10+6+5+20-10+20-12+18-15+20-16
= 20+10+6+5+20+10+6+5-16
= (20+10+6+5)+(20+10+6+5)-4*4
= 2(20+10+6+5) - 4*4
again, sqrt(20) = 4;
So, see that ...

কোন মন্তব্য নেই:
একটি মন্তব্য পোস্ট করুন