数据结构实验之排序七:选课名单

    xiaoxiao2025-11-20  9

    建立二维数组,利用下标来解决。 #include<bits/stdc++.h> using namespace std; struct no { char name[15]; }a[35005][2005]; char st[15]; int cou[2500]; int cmp(no a,no b) { return strcmp(a.name,b.name)<0; } int main() { int n,m,i,j,k,t; memset(cou,0,sizeof(cou)); scanf("%d%d",&n,&m); for(i=1;i<=n;i++) { scanf("%s",st); scanf("%d",&k); for(j=1;j<=k;j++) { scanf("%d",&t); strcpy(a[t][++cou[t]].name,st); } } for(i=1;i<=m;i++) { printf("%d %d\n",i,cou[i]); sort(a[i]+1,a[i]+cou[i]+1,cmp); for(j=1;j<=cou[i];j++) { printf("%s\n",a[i][j].name); } } return 0; }
    转载请注明原文地址: https://ju.6miu.com/read-1304390.html
    最新回复(0)