把火车分配到几条线上

把N个车分配到K条线路上
2<K<N<10^5
输入:
路线 车次
编号 进入的线路
输出:
1号线路的进入的车次 编号
2号…

前后不允许有空格

hill.in:
4 5
64871302 1
21697274 4
31899415 3
48359761 4
20937464 1

hill.out
2 64871302 20937464
0
1 31899415
2 21697274 48359761

// g++ -Wall -std=c++17 main.cpp

#include <iostream>
#include <map>

int main()
{
    int K, N, no, line;
    std::cin >> K >> N;
    std::multimap<int, int> map;
    for (int i = 0; i < N; i++)
    {
        std::cin >> no >> line;
        map.insert({line, no});
    }
    for (int i = 1; i <= K; i++)
    {
        std::cout << map.count(i) << ' ';
        auto range = map.equal_range(i);
        for (auto itr = range.first; itr != range.second; ++itr)
            std::cout << itr->second << ' ';
        std::cout << '\n';
    }
}