ENG  RUSTimus Online Judge
Online Judge
Problems
Authors
Online contests
About Online Judge
Frequently asked questions
Site news
Webboard
Links
Problem set
Submit solution
Judge status
Guide
Register
Update your info
Authors ranklist
Current contest
Scheduled contests
Past contests
Rules
back to board

Discussion of Problem 1184. Cable Master

What if use integers instead of float?
Posted by SPIRiT 22 Aug 2006 13:05
I read every line containing a number. And after that simply read all digits (without a point) and convert into integer 1 cm=1. 100km=100*10^3m=100*10^5cm=10^7. In that range I use binary search for finding the maximum possible length. Why WA at test 1?  (Yeah, I sort the lens too)
Here is a sample of code for converting:
fgets(buf,150,INPUT_STREAM);
       tmp=0;
       j=0;
       while((buf[j]>='0'&&buf[j]<='9')||buf[j]=='.')
      {
         if(buf[j]!='.')tmp=tmp*10+buf[j]-'0';
         j++;
      }
      sum+=tmp;
      Lens[i]=tmp;

Do the lengths always have exactly two digits

Edited by author 22.08.2006 13:44
Re: What if use integers instead of float?
Posted by Sid 22 Aug 2006 21:37
In fact you are right, you are to use in this problem integers instead of float and binary search. If you have wa#1 probaly you didn't understand problem...
I got AC without a sort...
Posted by SPIRiT 23 Aug 2006 16:05
When I removed sorting the lens and set the right bound to 100 km (not to the maximal length possible), I've got AC. Can anyone explain why? This two features were just for speed, they don't change the idea of binary search itself, I still used it. What could be wrong?