HDU 1004 数论水题
写这篇文章就是为了长记性。
#include
#include
#include
struct Node
{char color[16];int time;
}T[101];
int cmp(const void *_a, const void *_b)
{struct Node *a = (struct Node*)_a;struct Node *b = (struct Node*)_b;//如果写成下式准错, 不能用大于,小于号。必须写成-号//return b->time > a->time; return b->time - a->time;//这样写也对//return ((struct Node*)_b)->time - ((struct Node*)_a)->time;
}
int main()
{int n, num, i, j, ok;char str[16];while (scanf("%d", &n) && n ){memset(T, 0, sizeof(T));scanf("%s", &str);strcpy(T[0].color, str);num = T[0].time = 1;for (i = 1; i < n; i++){ok = 0;scanf("%s", &str);for (j = 0; j < num; j++)if (strcmp(T[j].color, str) == 0){T[j].time++;ok = 1;break;}if (!ok){strcpy(T[num].color, str);T[num++].time = 1;}}qsort(T, num, sizeof(struct Node), cmp);printf("%s\n", T[0].color);}return 0;
}
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
