#include <iostream> #include<bits/stdc++.h> using namespace std; struct student { string sno; vector<int>poi; int sum=0; int ispast = 0; }; bool cmp(student& a, student& b) { if (a.sum > b.sum)return true; else if(a.sum==b.sum) { return a.sno<b.sno; } else return false; } int main() { int n, m, g; while (cin >> n >> m >> g) { int amount=0; vector<int>score; for (int i = 0; i < m; i++) { int q; cin >> q; score.push_back(q); } student student1[n]; for (int i = 0; i < n; i++) { cin >> student1[i].sno; int l; cin>>l; for (int j = 0; j < l; j++) { int q; cin >> q; student1[i].poi.push_back(score[q-1]); student1[i].sum += score[q-1]; } if (student1[i].sum >= g){ student1[i].ispast = 1; amount++; } } sort(student1, student1 + n, cmp); cout<<amount<<endl; for (int i = 0; i < n; i++) { if (student1[i].ispast == 1) { cout << student1[i].sno << " " << student1[i].sum << endl; } } } } // 64 位输出请用 printf("%lld")