1class Solution {2public:3vector<int> smallestTrimmedNumbers(vector<string> &nums, vector<vector<int>> &queries) {4vector<int> res;5for (auto x : queries) {6priority_queue<pair<string, int>> v;7for (int i = 0; i < nums.size(); i++) {8int t = nums[i].length() - x[1];9string p = nums[i].substr(t, x[1]);10if (v.size() < x[0])11v.push({p, i});12else {13if (v.top().first > p) {14v.pop();15v.push({p, i});16}17}18}19int val = v.top().second;20res.push_back(val);21}22return res;23}24};