Submission

Status:
[PPPPP][PPPPP]

Score: 100

User: Dormon

Problemset: จุดแวะพัก

Language: cpp

Time: 0.020 second

Submitted On: 2025-03-15 16:59:38

#include <iostream>
#include <sstream>
#include <cstring>
#include <vector>
#include <algorithm>

using namespace std;

void input(vector<pair<string, vector<int>>> &v, int n){
    for (int i = 0;i < n;i++){
        string tmp;
        getline(cin, tmp);
        stringstream ss(tmp);
        string name;
        ss >> name;
        v[i].first = name;
        int t;
        while (ss >> t){
            v[i].second.push_back(t);
        }
    }    
}

int main()
{
    int n, k;
    cin >> n >> k;
    getchar();
    vector<pair<string, vector<int>>> v(n);
    input(v, n); 

    vector<pair<int, string>> res;
    for (int i = 0;i < n;i++){
        int sz = v[i].second.size();
        for (int j = 0;j < sz;j++){
            if (v[i].second[j] == k){
                res.push_back({j, v[i].first});
                break;
            }
        }
    }
    sort(res.begin(), res.end());

    if (res.empty()){
        cout << "-1\n";
        return 0;
    }
    for (int i = 0;i < min(3, (int)res.size());i++)
        cout << res[i].second << ' ';
    cout << '\n';
    // for (int i = 0;i < n;i++){
    //     cout << v[i].first << " : ";
    //     for (auto e:v[i].second)
    //         cout << e << ' ';
    //     cout << '\n';
    // }
}