Submission

Status:

[-SSSS][P-SSS]

Subtask/Task Score:

{0/50}{0/50}

Score: 0

User: Vlorinde

Problemset: จุดแวะพัก

Language: cpp

Time: 0.009 second

Submitted On: 2026-03-10 18:34:01

#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;

int main(){
    int a,b;
    vector<pair<int,string>> v;
    vector<string> n;
    string c;

    cin>>a>>b;
    cin.ignore();

    for(int i=0;i<a;i++){
        string name;
        int num=0,path=0;
        bool reading=false;

        cin>>name;
        getline(cin,c);

        for(int j=0;j<=c.size();j++){

            if(j<c.size() && c[j]>='0' && c[j]<='9'){
                num = num*10 + (c[j]-'0');
                reading=true;
            }
            else{
                if(reading){
                    if(num==b){
                        v.push_back({path,name});
                        break;
                    }
                    path++;
                    num=0;
                    reading=false;
                }
            }
        }
    }

    sort(v.begin(),v.end());

    int lim=min(3,(int)v.size());

    for(int i=0;i<lim;i++){
        n.push_back(v[i].second);
    }

    sort(n.begin(),n.end());

    if(n.size()==0){
        cout<<-1;
    }else{
        for(int i=0;i<n.size();i++){
            cout<<n[i]<<" ";
        }
    }
}