The first alt version added some whitespaces that broke the outline, so
I simply filled those up. I also expanded tabs to spaces since there is
no size limit restriction for the alternate version.
The second alt version attempted to force binary mode with _setmode()
and _fileno() calls, plus some additional headers. Rather than doing it
this way, I hack in the binary mode adjustments via preprocessor.
Actually I did a similar trick for IOCCC 2011, but I guess I didn't
submit that version:
https://uguu.org/archive/ioccc2011/akari/source/binmode_main.h
The file above uses _setmode() and _fileno(). The leading underscore
indicates that they were nonstandard extensions. For the binmode_main.h
in this change, I have opted for setmode() and STDIN_FILENO instead,
which are more widely available.