1025 排序(vector存结构体)
来源:互联网 发布:nba2k17帅哥捏脸数据 编辑:程序博客网 时间:2024/05/21 05:58
竟然还有不足13位的id,要补0,怪不得最后一个测试点不过,,,
/*先把local的序排好,存到总的vector里再sort总的*/#include<cstdio>#include<cstring>#include<iostream>#include<vector>#include<algorithm>using namespace std;int temp[1005],a[1005];struct student{ int score,loc,locrank,finrank; long long id;};//先对score排,再对id排bool cmp1(student a,student b){ if(a.score!=b.score) return a.score>b.score; else return a.id<b.id;}int main() { int n,k; scanf("%d",&n); vector<student> stu; //vector存结构体 for(int i=0;i<n;i++){ cin>>k; vector<student> v(k); for(int j=0;j<k;j++){ cin>>v[j].id; cin>>v[j].score; v[j].loc=i+1; } sort(v.begin(),v.end(),cmp1); v[0].locrank=1; stu.push_back(v[0]); for(int j=1;j<k;j++){ //!!!有并列成绩的处理方法 v[j].locrank=(v[j].score==v[j-1].score)?v[j-1].locrank:(j+1); stu.push_back(v[j]); } } sort(stu.begin(),stu.end(),cmp1); stu[0].finrank=1; for(int i=1;i<stu.size();i++) stu[i].finrank=(stu[i].score==stu[i-1].score)? stu[i-1].finrank :(i+1); cout<<stu.size()<<endl; for(int i=0;i<stu.size();i++) printf("%013lld %d %d %d\n", stu[i].id,stu[i].finrank,stu[i].loc,stu[i].locrank); return 0;}
阅读全文
0 0
- 1025 排序(vector存结构体)
- 自定义结构体vector排序
- STL_qsort(对int,char,vector,结构体排序举例)
- vector 结构体排序典型应用
- vector中自定义结构体的排序
- c++用vector对结构体排序
- vector sort结构体排序要点
- vector 结构体类型 使用 排序
- vector的使用,结构体排序
- 自定义结构体vector的排序
- vector的使用,结构体排序
- 对vector 中的结构体元素排序
- C++ 结构体vector使用sort排序
- Vector结构体(Leap::Vector)
- ZOJ 3770 : Ranking System (第14届浙江大学程序设计竞赛 D) - 结构体排序,vector
- C++中,结构体vector使用sort排序(以及sort参数错误问题)
- C++中,自定义结构体vector的排序
- STL中对vector容器中的结构体进行排序
- Jenkins入门系列之——02第二章 Jenkins安装与配置
- 饿了么项目(四)
- 怎么打开注册表
- next_permutation
- 阿里云 ECS Windows 2008中的FTP配置图文教程
- 1025 排序(vector存结构体)
- 170914 逆向-问鼎杯题库(Reverse100)
- 城市云脑研究之三,人工智能在城市云脑建设中的地位与作用
- SequenceInputStream
- mac 安装 xgboost
- 深入了解数据库索引的原理
- 如何在将c++中的Qlist<object*> 注册到qml中并使用
- 静态链接库LIB和动态链接库DLL的区别
- 在html页面中画出逻辑上的二叉树(资源下载)