HDU 1051

来源:互联网 发布:福彩双色球软件靠谱吗 编辑:程序博客网 时间:2024/06/03 23:44

1A, Greedy algorithm

#include <stdio.h>#include <iostream>#include <string.h>#include <algorithm>using namespace std;#define LEN 5010typedef struct Node{int l, w;}Node;Node node[LEN];Node ans[LEN];int cmp(Node a, Node b) {if(a.l == b.l) {return a.w < b.w;}return a.l < b.l;}int main() {int t, n;int i, j, k;scanf("%d", &t);for(i = 0; i < t; i++) {scanf("%d", &n);memset(ans, 0, sizeof(ans));for(j = 0; j < n; j++) {scanf("%d%d", &node[j].l, &node[j].w);}sort(node, node+n, cmp);//for(j = 0; j < n; j++) {//printf("%d %d\n", node[j].l, node[j].w);//}int index = 0;for(j = 0; j < n; j++) {for(k = 0; k < index; k++) {if(node[j].l >= node[k].l && node[j].w >= node[k].w) {node[k].l = node[j].l;node[k].w = node[j].w;break;}}if(k == index) {node[index].l = node[j].l;node[index].w = node[j].w;++index;}}printf("%d\n", index);}return 0;}