1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | HII GUYS THIS IS MY AC C++ SOLUTION if u want to know the logic behind this u can rerfer my another post for explanation http://spojdev.blogspot.in/2015/01/formula-for-calculating-sum-of-digits.html #include<iostream> #include<cstdio> #include<cmath> #define LL long long int using namespace std; LL sum(LL N) { if(N/10==0) return N*(N+1)/2; int i=0; LL n=N; while(n/10!=0){ i++; n/=10; } LL p=pow(10,i); return ((n*45*i*p/10)+ n*(n-1)*p/2+ n*(N%p+1) + sum(N%p)); } int main() { LL a,b,t; scanf("%lld",&t); while(t--) { cin>>a>>b; cout<<sum(b)-sum(a-1)<<endl; } return 0; } |
Translate
Friday, 30 January 2015
PR003004(Digit Sum) SPOJ PROBLEM SOLUTION
Subscribe to:
Post Comments (Atom)
-
HII guys this is totally geometry based problem there is nothing to code just use formula LOGIC::how to find centroid of a polygon u c...
1 comment:
Atleast explain the solution, the code wont do any good if the problem is a bit different from this
Post a Comment