У меня есть вектор и файл .txt с числами. В конце каждой строки есть "\ n". Текстовый файл выглядит так:
Example:
2 10 529 680 817 865 406 422 827 517 727 667
4 8 722 682 965 22 341 65 663 687
6 6 874 416 903 125 942 746
8 9 424 269 532 807 319 908 603 308 482
10 10 631 137 557 115 810 294 85 291 997 153
12 10 249 346 709 115 492 440 713 132 959 723
14 9 53 270 996 424 239 480 919 867 660
16 10 634 463 487 197 23 159 147 393 38 926
Мне нужен действительно быстрый способ ввода данных и заполнения их вектором, так как я участвую в конкурсе. Вектор после заполнения будет выглядеть следующим образом:
vector<vector<int> > students{
{2, 10, 529, 680, 817, 865, 406, 422, 827, 517, 727, 667 },
{4, 8, 722, 682, 965, 22, 341, 65, 663, 687 },
{6, 6, 874, 416, 903, 125, 942, 746 },
{8, 9, 424, 269, 532, 807, 319, 908, 603, 308, 482 },
{10, 10, 631, 137, 557, 115, 810, 294, 85, 291, 997, 153},
{12, 10, 249, 346, 709, 115, 492, 440, 713, 132, 959, 723 },
{14, 9, 53, 270, 996, 424, 239, 480, 919, 867, 660 },
{16, 10, 634, 463, 487, 197, 23, 159, 147, 393, 38, 926}
};
Я пробовал использовать mmap, но безуспешно ... Заранее спасибо.
PS: Я ладья ie поэтому, пожалуйста, немного понимания, если я не понимаю, что вы говорите.
Редактировать: Это код, который я использую сейчас:
for (i = 0; i < numOfStuds; i++)
{
fscanf(input, "%d %d ", &grade, &univs);
students[i].push_back(grade);
backup.push_back(grade);
students[i].push_back(univs);
for (j = 0; j < univs; j++)
{
fscanf(input, "%d ", &temp);
students[i].push_back(temp);
}
}