Submission
Status:
[PPPPP][-SSSS]
Subtask/Task Score:
{50/50}{0/50}
Score: 50
User: NovemNotes
Problemset: จุดแวะพัก
Language: cpp
Time: 0.007 second
Submitted On: 2026-03-11 11:01:24
#include <bits/stdc++.h>
using namespace std;
struct stc{
string name;
vector<int> rest;
};
int n,k;
vector<stc> v;
vector<pair<int,string>> ans;
void input(){
cin >> n >> k;
v.resize(n);
cin.ignore();
for(int i=0;i<n;i++){
string s;
getline(cin,s);
int tmp=0;
vector<int> num;
string name="";
bool check=false;
bool namecheck=false;
for(auto &x:s){
if(isalpha(x))name+=x;
else if(isalnum(x)){
tmp = tmp*10 + (x-'0');
check = true;
}else{
if(check){
num.emplace_back(tmp);
check=false;
tmp=0;
}
}
}
if(check){
num.emplace_back(tmp);
}
// cout << s << "\n";
sort(num.begin(),num.end());
num.erase(unique(num.begin(),num.end()),num.end());
v[i].name = name;
v[i].rest = num;
}
}
int main(){
ios_base::sync_with_stdio(false);cin.tie(NULL);
input();
for(int i=0;i<n;i++){
auto it = lower_bound(v[i].rest.begin(),v[i].rest.end(),k);
if(it==v[i].rest.end() || *it != k)continue;
int sz = it-v[i].rest.begin();
ans.emplace_back(sz,v[i].name);
}
sort(ans.begin(),ans.end());
if(ans.empty())cout << "-1\n";
else{
for(auto &[sz,name]:ans){
cout << name << " ";
// cout << sz << " " << name << "\n";
}
cout << "\n";
}
return 0;
}
/*
5 7
nine 0 1
novem 1 2
notes 2 3
novemnotes 3 4
haimiya 4 5
*/