Очень часто на многих олимпиадах бывает так, часто "бегаешь" от написания одной задачи к отладке/написанию/тестированию другой. Особенно сильно заметно, когда ты пишешь код на ACM-ке и у тебя 5 функций вида solA() solB() ...
Собственно вопрос, как лучше всего хранить несколько решений в одном файле и при этом минимизировать количество изменяемых строк между той версией, что сдаешь, и той, что пишешь?