2 months ago when I have started solving ACM ad-hoc problems, I started with The 3n+1 problem. And I have failed to solve as usual. Then next few days I was thinking some complex solutions for that problem but my misfortune. I have failed again and again I have failed.
Then I have focused on other ad-hoc problems. Solved some and learned that, "Sticky with Story!". The story of some ad-hoc problems have written in such way that readers started to think like they are going to solve a dynamic greedy np-hard problem. :D :D :D. One of my academic fellow who already competed regional math olympierd in Indonesia 2 times, he also gave-up ACM for this The 3n+1 problem!!
Here I am giving some clue for them who have tried this problem already and becoming frasted :)
clue 1: look at data type: declare all of your variables long (%ld)
clue 2: input would not always be given in sorted order. check whether first number < second number
clue 3: Show output in given order: If you swap first number and second number at the beginning of your program then be careful when showing output.
clue 4: If you got Time Limit Exit then check - does your program terminates correctly?
To terminate your program write program like this -
while( scanf("%ld %ld", &firstNumber, &secondNumber) != EOF )
{
// ... rest of your code ...
}
clue 5: The program algorithm is given in story. so you do not need to think about new algorithm.
clue 6: after each output there will be a new line. so,
printf("%ld %ld %ld\n", printNumberOne, printNumberTwo, output);
clue 7: debug, debug and debug if you get wrong output.
This problem is a Brute Force problem. so think straight.
Happy coding.
No comments:
Post a Comment