当前位置: 首页 > news >正文

九九建站-网站建设 网站推广 seo优化 seo培训抖音seo优化系统招商

九九建站-网站建设 网站推广 seo优化 seo培训,抖音seo优化系统招商,wordpress 媒体库,系统开发的方法题目描述 现有两门选修课,每门选修课都有一部分学生选修,每个学生都有选修课的成绩,需要你找出同时选修了两门选修课的学生,先按照班级进行划分,班级编号小的先输出,每个班级按照两门选修课成绩和的降序排序…

题目描述
现有两门选修课,每门选修课都有一部分学生选修,每个学生都有选修课的成绩,需要你找出同时选修了两门选修课的学生,先按照班级进行划分,班级编号小的先输出,每个班级按照两门选修课成绩和的降序排序,成绩相同时按照学生的学号升序排序。

输入描述
第一行为第一门选修课学生的成绩,

第二行为第二门选修课学生的成绩,

每行数据中学生之间以英文分号分隔,每个学生的学号和成绩以英文逗号分隔,

学生学号的格式为8 88位数字

2位院系编号+入学年份后2位+院系内部1位专业编号+所在班级3位学号

学生成绩的取值范围为[0 , 100 0,1000,100]之间的整数,

两门选修课选修学生数的取值范围为[1 − 2000 1-20001−2000]之间的整数。

输出描述
同时选修了两门选修课的学生的学号,如果没有同时选修两门选修课的学生输出NULL,

否则,先按照班级划分,班级编号小的先输出,每个班级先输出班级编号(学号前五位),

然后另起一行输出这个班级同时选修两门选修课的学生学号,学号按照要求排序(按照两门选修课成绩和的降序,成绩和相同时按照学号升序学生之间以英文分号分隔。

样例
输入

01202021,75;01201033,95;01202008,80;01203006,90;01203088,100
01202008,70;01203088,85;01202111,80;01202021,75;01201100,88

输出

01202
01202008;01202021
01203
01203088

说明

同时选修了两选修课的学生01202021 、 01202008 、 01203088 01202021、01202008、0120308801202021、01202008、01203088,这三个学生两门选修课的成绩和分别为150 、 150 、 185 150、150、185150、150、185,

01202021 、 01202008 01202021、0120200801202021、01202008届于01202 0120201202班的学生,按照成绩和降序,成绩相同时按学号升序输出的结果为01202008 ; 01202021 01202008;0120202101202008;01202021,

01203088 0120308801203088属于01203 0120301203班的学生,按照成绩和降序,成绩相同时按学号升序输出的结果为0120308 01203080120308,

01202 0120201202的班级编号小于01203 0120301203的班级编号,需要先输出。

输入

01201022,75;01202033,95;01202018,80;01203006,90;01202066,100
01202008,70;01203102,85;01202111,80;01201021,75;01201100,88

输出

NULL

说明

没有同时选修了两门选修课的学生,输出NULL
 

代码:

#include <bits/stdc++.h>
using namespace std;struct student {string num;int fs;
};vector<student> ac;bool cmp1( student A,  student B) {return A.num < B.num;
}bool cmp2( student A,  student B) {string s1 = A.num.substr(0, 5), s2 = B.num.substr(0, 5);if (s1 == s2) {if (A.fs == B.fs) {return A.num < B.num;}return A.fs > B.fs;}return s1 < s2;
}int main() {int c = 0;string s;for (int i = 0; i < 2; i++) {cin >> s;s += ";";vector<string> vs;int len = s.size();string tmp;for (int i = 0; i < len; ++i) {if (s[i] == ';') {vs.emplace_back(tmp);tmp = "";} else {tmp += s[i];}}for (string v : vs) {int p = v.find(",");int a;istringstream(v.substr(p + 1)) >> a;ac.push_back({v.substr(0, p), a});}}sort(ac.begin(), ac.end(), cmp1);vector<student> students;for (int i = 0; i < ac.size(); ++i) {int j = i;student student = {ac[i].num, 0};int cnt = 0;while (j < ac.size() && ac[j].num == ac[i].num) {student.fs += ac[j].fs;cnt += 1;j += 1;}if (cnt == 2) {students.push_back(student);}i = j - 1;}if (students.empty()) {cout << "NULL" << endl;return 0;}sort(students.begin(), students.end(), cmp2);// 按照题目要求输出for (int i = 0; i < students.size(); ++i) {// 先输出每个班级号string t = students[i].num.substr(0, 5);cout << t << "" << endl;int j = i + 1;while (j < students.size() && students[j].num.substr(0, 5) == t) {j += 1;}for (int k = i; k < j; ++k) {if (k != i) {cout << ";";}cout << students[k].num;}cout << endl;i = j - 1;}return 0;
}

http://www.tj-hxxt.cn/news/50682.html

相关文章:

  • 电子商务网站建设及推广方案论文备案查询
  • 网站建设用户调查济南seo优化
  • 西安网站建设最新案例个人域名注册流程
  • 哪个网站做清洁的活多引擎搜索优化
  • 建站63年来第一次闭站?北京站辟谣企业建站流程
  • 做动态网站的流程图小果seo实战培训课程
  • 深圳市建工建设集团有限公司官网电脑优化软件
  • 重庆市建筑网站建设查询网官网
  • 麻将网站开发搜索引擎免费登录入口
  • 做我的狗哪个网站可以看google浏览器网页版
  • 广州企业网站建设公司做百度线上推广
  • 用手机搭建网站网络营销推广论文
  • 荔湾区网站建设东莞疫情最新消息今天新增病例
  • 用ps怎么做学校网站页面百度app推广方法
  • 怎么才能创个网站怎么营销推广
  • 网站开发课程知识点总结郑州seo询搜点网络效果佳
  • 企业网站免费建设工具企业网站推广建议
  • 合肥做百度网站seo学校培训
  • 网站建设业务员话术抖音引流推广一个30元
  • 做珠宝建个网站推广怎么样信息如何优化上百度首页公司
  • 平乡网站建设福州seo
  • 福州网站免费制作百度收录网站提交入口
  • 中国建设银行网站对公业务百度权重是什么意思
  • 在网上做网站志鸿优化网
  • 网站首页是乱码 其他页面正常鸿星尔克网络营销
  • 聊城网站建设设计开发公司建设网站的基本流程
  • 诸城 网站 建设公司网站怎么申请怎么注册
  • 做外贸通常用哪些网站网络舆情监测系统软件
  • 湛江网站建设皆选小罗23网站设计培训
  • 娄底网站建设方案百度网址链接