Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
现在5:57PM,谁来救我?/*final3*/ #include <stdio.h> #include <math.h> long d(long n) { if(n==10)return 1; return d(n/10)*9+n/10; } /* get the last digit */ long GetLastDigit ( long x ) { return (long)( (x/10.0+0.0009-x/10) *10 ); } long GetCount4(double x) { double temp; long count4 = 0 ; long wei = 0,last; if( ( x/10.0 - floor(x/10) ) > 0.4 ) { count4++; } x = floor(x/10); wei = 10; while( x >= 1 ){ last = GetLastDigit(x); if( last != 0 ){ if( last > 4){ count4 = (last-1) * d(wei) + wei + count4; }/*if inside*/ else{ count4 = last * d(wei) + count4; } }/*if*/ x = floor(x/10); wei *=10; }/*while*/ return (count4); }/*GetCount4*/ main() { double myx[100000]; long i = 0; scanf("%f",&myx[0]); while(myx[i]!=0) { i++; scanf("%f",&myx[i]); } i = 0; while(myx[i]!=0){ printf("%ld: %ld\n",(long)myx[i],((long)(myx[i]))-GetCount4(myx[i]) ); i++; } }/*main*/ Followed by:
Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator