结构体排序问题

简介: 结构体排序问题

题目如下:

6.png7.png

刚刚看到这道题的时候一点点思路都没有……连题目都没读懂……
#include <stdio.h>
#include <string.h>
#include <algorithm>
using namespace std;
typedef struct clas
{
    int id;
    int num;
}clas;
bool cmp(clas a,clas b)
{
    if(a.num == b.num)
        return a.id < b.id;
    else
        return a.num < b.num;
}
clas arr[10005];
int main()
{
    memset(arr,0,sizeof(arr));
    int N,M,a,b;
    scanf("%d %d",&N,&M);
    for(int i = 1;i <= M;i++)
        arr[i].id = i;
    for(int j = 0;j < N;j++)
    {
        scanf("%d",&a);
        for(int k = 1;k <= a;k++)
        {
            scanf("%d",&b);
            arr[b].num += 1;
        }
    }
    sort(arr + 1,arr + M +1,cmp);
    for(int i = 1;i < M + 1;i++)
    {
        printf("%d %d\n",arr[i].id,arr[i].num);
    }
    return 0;
}

cmp 一切为了比较,题中提到了‘相同人数的,课程编号小的先输出’的要求,所以用人数比较。

注意输入问题!!!就是没读懂题……

然后就是正常的结构体排序问题嗯!

相关文章
|
机器学习/深度学习 API 开发工具
通义千问API入门教程
本教程将带你从零开始,快速了解如何通过 API 使用通义千问大模型,并尝试使用大模型 API 开发一些简单的应用应用到工作中,提升效率。
|
Web App开发 JavaScript 前端开发
【跨域】一篇文章彻底解决跨域设置cookie问题!
之前做项目的时候发现后端传过来的 SetCookie 不能正常在浏览器中使用。是因为谷歌浏览器新版本Chrome 80将Cookie的SameSite属性默认值由None变为Lax。接下来带大家解决该问题。
3895 0
|
Linux Unix 网络协议
从quagga到FRRouting (FRR)
https://frrouting.org/ github:https://github.com/FRRouting/frr FRRouting (FRR) is an IP routing protocol suite for Linux and Unix platforms which incl...
5510 1
|
图形学 C# 开发工具
《Unity 游戏案例开发大全》一6.2 游戏的策划及准备工作
前一节简单介绍了游戏的背景和功能,本节主要介绍本游戏的策划及正式开发前的一些准备工作。游戏开发需要做的准备工作大体上包括游戏策划、美工需求、音乐等。游戏开发前的充分准备可以保证开发人员有一个顺畅的开发流程,保证开发顺利进行。
3560 0
|
2天前
|
搜索推荐 编译器 Linux
一个可用于企业开发及通用跨平台的Makefile文件
一款适用于企业级开发的通用跨平台Makefile,支持C/C++混合编译、多目标输出(可执行文件、静态/动态库)、Release/Debug版本管理。配置简洁,仅需修改带`MF_CONFIGURE_`前缀的变量,支持脚本化配置与子Makefile管理,具备完善日志、错误提示和跨平台兼容性,附详细文档与示例,便于学习与集成。
265 116
|
17天前
|
域名解析 人工智能
【实操攻略】手把手教学,免费领取.CN域名
即日起至2025年12月31日,购买万小智AI建站或云·企业官网,每单可免费领1个.CN域名首年!跟我了解领取攻略吧~