1 条题解
-
0
C :
#include<stdio.h> #include<string.h> struct candidate { char name[20]; //成员 int poll; //选票 }a[100]; void shuru(int n, int m); void paixu(int n); int main() { int n, m, i; scanf("%d%d", &n, &m); shuru(n, m); paixu(n); for(i=0; i<n; i++) { printf("%s", a[i].name); if(i<n-1) printf("\n"); if(a[i].poll > a[i+1].poll) { break; } } } void shuru(int n, int m) { int i, j; char name[20]; for(i=0; i<n; i++) { scanf("%s", a[i].name); a[i].poll = 0; } for(i=0; i<m; i++) { scanf("%s", name); for(j=0; j<n; j++) { if(strcmp(name, a[j].name) == 0) { a[j].poll++; } } } } void paixu(int n) { int i, j, t; char name[20]; for(i=0; i<n-1; i++) { for(j=0; j<n-i-1; j++) { if(a[j].poll < a[j+1].poll) { t = a[j].poll; a[j].poll = a[j+1].poll; a[j+1].poll = t; strcpy(name, a[j].name); strcpy(a[j].name, a[j+1].name); strcpy(a[j+1].name, name); } } } }
C++ :
#include<stdio.h> #include<string.h> struct candidate { char name[20]; int poll; }a[100]; void shuru(int n, int m); void paixu(int n); int main() { int n, m, i; scanf("%d%d", &n, &m); shuru(n, m); paixu(n); for(i=0; i<n; i++) { printf("%s", a[i].name); if(i<n-1) printf("\n"); if(a[i].poll > a[i+1].poll) { break; } } } void shuru(int n, int m) { int i, j; char name[20]; for(i=0; i<n; i++) { scanf("%s", a[i].name); a[i].poll = 0; } for(i=0; i<m; i++) { scanf("%s", name); for(j=0; j<n; j++) { if(strcmp(name, a[j].name) == 0) { a[j].poll++; } } } } void paixu(int n) { int i, j, t; char name[20]; for(i=0; i<n-1; i++) { for(j=0; j<n-i-1; j++) { if(a[j].poll < a[j+1].poll) { t = a[j].poll; a[j].poll = a[j+1].poll; a[j+1].poll = t; strcpy(name, a[j].name); strcpy(a[j].name, a[j+1].name); strcpy(a[j+1].name, name); } } } }
- 1
信息
- ID
- 1317
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者