Нахождения трёх чисел сумма делится на 3 из файла с++
В текстовом файле записан набор натуральных чисел, не превышающих 108. Гарантируется, что все числа различны. Из набора нужно выбрать три числа, сумма которых делится на 3. Какую наименьшую сумму можно при этом получить?
Входные данные.
Первая строка входного файла содержит целое число N — общее количество чисел в наборе. Каждая из следующих N строк содержит одно число.
Пример входного файла:
4
5
8
14
11
В данном случае есть четыре подходящие тройки: 5, 8, 11 (сумма 24); 5, 8, 14 (сумма 27); 5, 14 11 (сумма 30) и 8, 14, 11 (сумма 33). В ответе надо записать число 24.
Вам даны два входных файла (A и B), каждый из которых имеет описанную выше структуру. В ответе укажите два числа: сначала значение искомой суммы для файла A, затем для файла B.
Нужен только файл А,я впервые работаю с файлами,ну конкретно решаю задачи,не знаю как осуществить,думаю лучше использовать векторы
auto x=std::ifstream("27-A."txt");
std::vector <int> v;
std::copy(std:: ifstream_iterator<int>(x),std::, ifstream_iterator<int>(),std::back_inserter(v));
STD::copy(v.begin(),v.end(), STD::ostream_iterator(STD::cout,"\n"));
Ответы (1 шт):
Сумму, кратную 3, можно получить из:
-трёх чисел, кратных 3
-трёх чисел с остатком 1 по модулю 3
-трёх чисел с остатком 2 по модулю 3
-одного числа, кратного 3, одного с остатком 1 по модулю 3, одного с остатком 2 по модулю 3
Значит, достаточно найти три минимальных числа по каждому из остатков 0,1,2, и проверить, какой из вышеуказанных вариантов лучше.

