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:30:46

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

int main(){
    int a;
    int b;
    vector <pair<int,string>>v;
    vector <string>n;
    string c,q[3];
    cin>>a>>b;
    cin.ignore();

    for(int i=0;i<a;i++){
        string name;
        int val=1,num=0,path=0;
        cin>>name;
        getline(cin,c);
        for(int i=0;i<=c.size();i++){
            if(i<c.size() && c[i]>='0' && c[i]<='9'){
                num = num*10 + (c[i]-'0');
            }
            else{
                if(num!=0){
                    if(num==b){
                        v.push_back({path,name});
                        break;
                    }
                    path++;
                    num=0;
                }
            }
        }
    }
    //เรียงคนที่พักเร็วสุด
    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]<<" ";
        }
    }
}