hdu 1236

来源:互联网 发布:淘宝店铺怎么优化标题 编辑:程序博客网 时间:2024/05/02 02:09

题目大意:中文题,读者可以直接到OJ上去看。。。


解题思路:没有什么思路。看完题意整个程序就基本成型了。。。。。

代码如下:

/* * 1236_1.cpp * *  Created on: 2013年8月10日 *      Author: Administrator */#include <iostream>using namespace std;struct Node {string name;int sum;};bool compare(Node a, Node b) {if (a.sum == b.sum) {return a.name < b.name;}return a.sum > b.sum;}int main() {int n, m, line;while (cin >> n >> m >>line, n) {Node students[n];int scores[m+1];        memset(scores,0,sizeof(scores));int i;for (i = 0; i < n; ++i) {students[i].sum = 0;}for (i = 1; i <= m; ++i) {cin >>scores[i];}for (i = 0; i < n; ++i) {cin >> students[i].name;int num;int j;cin >> num;for (j = 1; j <= num; ++j) {int jj;cin >>jj;students[i].sum += scores[jj];}}sort(students, students + n, compare);int count = 0;for (i = 0; i < n; ++i) {if (students[i].sum >= line) {count++;}}if (count != 0) {printf("%d\n", count);for (i = 0; i < n; ++i) {if (students[i].sum >= line) {cout << students[i].name << " " << students[i].sum << endl;}}} else {printf("0\n");}}}