Задание:
Пусть имеется файл, содержащий последовательность из n 32-битовых целых чисел со знаком, числа разделены символом «;». При этом (n-1)/2 чисел встречаются в файле по два раза, одно число уникально.
Требуется написать программу, принимающую на вход указанный текстовый файл с последовательностью чисел, и формирующую файл с уникальным числом. Указания: за решение задачи с использованием хранилищ групп значений (массивов, файлов, блоков памяти и т.п.) начисляется только 20% от максимального балла за задачу.
Решение:
Решение основано на коммутативности и ассоциативности операции xor и заключается в xor сумме всех чисел: a1 xor a2 xor ... xor an , где a1, a2, ..., an – числа, записанные во входном файле. Полученный результат будет равен искомому числу.