首页 > 其他分享 >考试排名(YACS)

考试排名(YACS)

时间:2024-08-02 16:58:16浏览次数:17  
标签:YACS 班级 cl int stu num 排名 排序 考试

题目描述

某学校的某次考试成绩以等第形式出现的,每名学生的成绩都是ABCD 中的一个。

学校有 n 个班级,小爱想根据这次考试中 A 的比例,从高到低为这些班级排序;若出现两个班级 A 的比例相同,就按 B 的比例从高到低排序;若再相同,就按照 C 的比例;若再相同,就按照班级人数从大到小排序;若再相同,就按照班级编号从小到大排序。

请帮助小爱完成这个任务。

输入格式

第一行:单个整数 n。
第二行到第 n+1 行:第 i+1行有一个字符串,表示第 i 个班级的学生成绩,每个字符代表一个学生的成绩。

输出格式

只有一行:按照班级排名先后顺序输出 n 个整数,每个整数代表一个班级的编号。

数据范围
  • 对于 50% 的数据,1≤n≤100;
  • 对于 100%的数据,1≤n≤10000,且每个班级人数不超过 100 人。
样例1

输入:

3
ABAACAA
DDABBB
BABABA

输出:

1 3 2

 说明:1班的A比例最高,3班第二,2班最低

样例2 

 输入:

3
ABCD
ABCDABCD
AABBCCDD

 输出:

2 3 1

 说明:2班3班各项分数比例相同且人数高于1班

题解在此:
#include<bits/stdc++.h>
using namespace std;
struct node{
	float a,b,c;
	int stu,num;
}cl[10005];
bool cmp(node n,node m){
	if(n.a!=m.a)return n.a<m.a;
	if(n.b!=m.b)return n.b<m.b;
	if(n.c!=m.c)return n.c<m.c;
	if(n.stu!=m.stu)return n.stu>m.stu;
	return n.num<m.num;
}
int main(){
	int n;
	cin>>n;
	for(int i=1;i<=n;i++){
		string s;
		cin>>s;
		cl[i].num=i;
		cl[i].stu=s.length();
		for(int j=0;j<s.length();j++){
			if(s[j]=='A')cl[i].a+=1;
			else if(s[j]=='B')cl[i].b+=1;
			else if(s[j]=='C')cl[i].c+=1;
		}
		cl[i].a=cl[i].stu/cl[i].a;
		cl[i].b=cl[i].stu/cl[i].b;
		cl[i].c=cl[i].stu/cl[i].c;
	}
	sort(cl+1,cl+n+1,cmp);
	for(int i=1;i<=n;i++)cout<<cl[i].num<<" ";
	return 0;
}

 考试排名icon-default.png?t=N7T8https://iai.sh.cn/problem/429

标签:YACS,班级,cl,int,stu,num,排名,排序,考试
From: https://blog.csdn.net/ZYZQAQ_C/article/details/140874100

相关文章

  • 普通话考试第一题注意事项总结
    准橙普通话测试是普通话等级考试必备软件!普通话水平测试干货学习技巧,最新报考资讯,帮你轻松学好普通话~普通话考试第一题,虽然占分不高只有10分。但是对于想考取高分,或者对命题说话等题目发挥有点担心的同学来说,尽量在第一题中少扣分,也是非常重要的。很多时候,你离二甲、一乙甚......
  • 2024年cisp考试时间及费用
    虽然CISP每个月都有考试,但每个地方考试时间不同,很多小伙伴都在问:2024年cisp考试时间是什么时候?CISP要多少钱?今天将cisp考试时间及费用一次性给大家讲清楚!一、2024年各地CISP考试时间CISP考试时间会提前公布,2024年8-12月各地CISP考试时间具体如下:2024年北京CISP考试时间:8月2......
  • 基于springboot+vue.js+uniapp在线考试系统的附带文章源码部署视频讲解等
    在这里插入图片描述@toc前言......
  • 基于JAVA的网络在线考试系统的设计与实现/在线教学管理系统/计算机专业
    需要源码的联系方式请查看文末摘 要计算机网络与信息化管理相配合,可以有效地提高人员的工作效能和改进工作的质量。良好的在线考试系统可以使考试得到更好的进行和管理,并有助于管理员更好地管理学生成绩,解决人力管理中出现的差错等问题。因此一套好的在线考试系统可以起到......
  • 外链发布要求:如何有效提升网站SEO排名
    外链发布的重要性在当今竞争激烈的网络世界中,网站的SEO排名至关重要。而外链是提升网站SEO排名的关键因素之一。外链不仅可以增加网站的曝光度,还能够提高搜索引擎对网站的信任度和权重,从而在搜索结果中获得更高的排名。因此,制定有效的外链发布要求对于网站的发展至关重要。外链......
  • 腾讯云数据库认证官方的考试费是多少钱?
    腾讯云的认证项目很多,包括云计算、大数据、人工智能等多个技术领域方向的认证路径,每个方向包括工程师(Associate)、高级工程师(Professional)、专家(Expert)三个不同的等级。 对于数据库方面,腾讯云的这三个级别的考试费用分别是:TCCA工程师:1200元TCCP高级工程师:1800元TCCE专......
  • Javaweb项目|springboot基于JavaWeb技术的在线考试系统设计与实现【源码+论文+PPT+部
    我们提供多元化的技术项目服务,涵盖Java、PHP、Python等编程语言,以及前端开发、人工智能、大数据、单片机开发、ASP.NET、物联网等领域。我们还提供简历模板、面试题库和学习资料,帮助用户提升技术能力和就业竞争力。我们的服务内容包括:免费功能设计、任务书和开题报告撰写、中......
  • Javaweb项目|springboot基于JavaWeb技术的在线考试系统设计与实现
    收藏点赞不迷路 关注作者有好处文末获取源码一、系统展示二、万字文档展示 基于springboot基于JavaWeb技术的在线考试系统设计与实现开发语言:Java数据库:MySQL技术:Spring+SpringMVC+MyBatis+Vue工具:IDEA/Ecilpse、Navicat、Maven 编号:springboot072一、系统展......
  • 2024年华为OD机试真题-结队编程 -(C++/Java/python)-OD统一考试(C卷D卷)
     2024华为OD机试真题目录-(B卷C卷D卷)-【C++JavaPython】题目描述某部门计划通过结队编程来进行项目开发,已知该部门有N名员工,每个员工有独一无二的职级,每三个员工形成一个小组进行结队编程,结队分组规则如下:从部门中选出序号分别为i、j、k的3名员工,他们的职级分贝为......
  • 7月30日考试总结
    7月30日考试总结T1报数游戏II要点:将试子列出来后,不难发现求前缀和找最小负数即可。问题:无。反思:一眼前缀和没啥好说的。T2百万富翁的第二次实验要点:做一下前缀和或离散化,然后双指针即可。问题:考试时写了个dp,以为时间复杂度是能给很多分的,结果就给了特判分主要是数据全......