NOJ 240题小明的调查统计(二)结构体按照多个条件排序
来源:互联网 发布:网络专科可以自考本科 编辑:程序博客网 时间:2024/05/17 10:05
题目链接~~>
这一题其实一点也不难,属于简单题。开始wrong了好几次,后来才发现sort排序不稳定,需要在给结构体排序时先按成绩排,如果成绩一样,再按班级号从小到大排,如果班级 号一样,再按学号从小到大排!!!
代码:
#include<stdio.h>#include<algorithm>using namespace std;struct zhang{ int a,b,exam,c; }t[100005];bool cmp(zhang x,zhang y){ if(x.exam!=y.exam) return x.exam > y.exam ; else if(x.a!=y.a) return x.a < y.a ; else return x.b < y.b ;}int main(){ int r=0,T,n,m,m1,j=0,i; scanf("%d%d",&T,&m); while(T--) { scanf("%d",&n); j++;//班级 for(i=1;i<=n;i++) { scanf("%d",&t[r].exam); t[r].a=j;t[r].b=i; r++; } } sort(t,t+r,cmp); t[0].c=1; for(i=1;i<r;i++) if(t[i].exam==t[i-1].exam) t[i].c=t[i-1].c; else t[i].c=t[i-1].c+1; while(m--) { scanf("%d",&m1); for(i=0;i<r;i++) { if(t[i].c==m1) printf("%d %d\n",t[i].a,t[i].b); else if(t[i].c>m1) break; } } return 0;}
- NOJ 240题小明的调查统计(二)结构体按照多个条件排序
- nyoj-240-小明的调查统计(二)(结构体排序)
- NYOJ---240题小明的调查统计(二)
- python按照多个条件排序
- NYOJ 240 小明的调查统计(二)
- NYOJ 240 小明的调查统计(二)
- NYOJ 240题 小明的调查统计(二)
- NYOJ 240 小明的调查统计(二)
- 小明的调查统计(二)
- 小明的调查统计(二)
- 渣渣ACM日记——240-小明的调查统计(二)(NYOJ)
- 结构体条件排序
- Sql2005 tips 按照某些条件(一个or多个)分组,取分组中满足某个条件的一条记录
- 统计多个学生的多门课的成绩(结构体)
- 按照数组的形式排序+条件切换切换查询
- sql in查询结果按照in的条件排序返回
- NYOJ 240 小明的调查统计
- List按照多个字段进行排序
- poj1159-LCS滚动数组优化。
- Ant的任务(task)
- t.interrupt(), Thread.interrupted(), native isInterrupted()
- Andrew Stankevich's Contest #1 Solution
- hdu 1429 BDF+二进制状态压缩
- NOJ 240题小明的调查统计(二)结构体按照多个条件排序
- 使用ACE获取主机的IP地址
- ubuntu下非本账户的.profile文件的修改
- ubuntu 下安装 pthread man 遇到的一些问题
- Axis2构建Web Service应用(无需Stub方式)
- Pycharm 快捷键
- 2013年暑假教学
- String 类
- 黑马程序员____基础____网络编程