Можно использовать всё что угодно, хоть в файл пиши значения, хоть в память динамически. Можно использовать динамические переменные, это те что создаются в процессе работы, но я с ними не работал не разу. Но есть 2 условия:
никаких массивов, в т.ч. хешей и динамических массивов
не более 1 переменной.

У нас эту задачу решали 20 человек и ни кто не решил. Правда на экзамене препод показал как надо было решать.