Здравствуйте, conraddk, Вы писали:
C>Что касается битового поля — а если числа повторяются, и сумму как раз надо составлять из одинаковых (см. сабж)?
Не , ну тут-то как раз всё пучком

Ещё раз внятно опишу...
до mas[i] мы заменяем все элементы на N-mas[j], и по префиксу состоящего из N-mas[j] делаем поле. => при наличии там элемента mas[i] мы узнаём, что существует пара, дающая в сумме N, после этого уже выполняем поиск конкретного места...
Нсчёт эффективной реализации битового поля нужно подумать — опыта у меня не много, но если в доп массиве записывать мин адреса для всех вхождений в поле тогда и доп поиск не нужно будет делать.
PS: может я и не прав. Остаётся только понять где