【寒假每日一题】AcWing 3443. 学分绩点(补)

简介: 目录一、题目1、原题链接2、题目描述二、解题报告1、思路分析2、时间复杂度3、代码详解

一、题目

1、原题链接

3443. 学分绩点 - AcWing题库


2、题目描述

北京大学对本科生的成绩施行平均学分绩点制(GPA)。


既将学生的实际考分根据不同的学科的不同学分按一定的公式进行计算。


公式如下:


实际成绩     绩点

90——100     4.0

85——89      3.7

82——84      3.3

78——81      3.0

75——77      2.7

72——74      2.3

68——71      2.0

64——67      1.5

60——63      1.0

60以下        0

一门课程的学分绩点 =该课绩点 × 该课学分


总评绩点 = 所有学科学分绩点之和 /所有课程学分之和


现要求你编写程序求出某人 A的总评绩点(GPA)。


输入格式


第一行,总的课程数 n;


第二行,相应课程的学分(两个学分间用空格隔开);


第三行,对应课程的实际得分;


此处输入的所有数字均为整数。


输出格式


输出有一行,总评绩点,精确到小数点后 2 位小数。


数据范围


1≤n≤10,

学分取值范围 [1,10],

课程得分范围 [0,100]。


输入样例:


5

4 3 4 2 3

91 88 72 69 56

输出样例:


2.52


二、解题报告

1、思路分析

1)根据题意直接模拟。


2)注意数据应为浮点型,最后保留2位小数。

2、时间复杂度

时间复杂度O(n)


3、代码详解

#include <iostream>

#include <iomanip>

using namespace std;

double x[11],g[11];

int main()

{   int n;

   cin>>n;

   double sumx=0;

   for(int i=0;i<n;i++){

    cin>>x[i];

    sumx+=x[i];

}

for(int i=0;i<n;i++){

    cin>>g[i];

}

double sumj=0;

for(int i=0;i<n;i++){

 if(g[i]>=90&&g[i]<=100){

  sumj+=4*x[i];

 }

 else if(g[i]>=85&&g[i]<=89){

  sumj+=3.7*x[i];

 }

 else if(g[i]>=82&&g[i]<=84){

  sumj+=3.3*x[i];

 }

 else if(g[i]>=78&&g[i]<=81){

  sumj+=3*x[i];

 }

 else if(g[i]>=75&&g[i]<=77){

  sumj+=2.7*x[i];

 }

 else if(g[i]>=72&&g[i]<=74){

  sumj+=2.3*x[i];

 }

 else if(g[i]>=68&&g[i]<=71){

  sumj+=2*x[i];

 }

 else if(g[i]>=64&&g[i]<=67){

  sumj+=1.5*x[i];

 }

 else if(g[i]>=60&&g[i]<=63){

  sumj+=1*x[i];

 }

 else {

  sumj+=0*x[i];

 }

}

cout<<fixed<<setprecision(2)<<sumj/sumx;

return 0;

}

目录
相关文章
|
存储 负载均衡 容灾
MySQL数据库的分布式架构和数据分片方案
MySQL数据库的分布式架构和数据分片方案
|
机器学习/深度学习 算法 TensorFlow
机器学习算法简介:从线性回归到深度学习
【5月更文挑战第30天】本文概述了6种基本机器学习算法:线性回归、逻辑回归、决策树、支持向量机、随机森林和深度学习。通过Python示例代码展示了如何使用Scikit-learn、statsmodels、TensorFlow库进行实现。这些算法在不同场景下各有优势,如线性回归处理连续值,逻辑回归用于二分类,决策树适用于规则提取,支持向量机最大化类别间隔,随机森林集成多个决策树提升性能,而深度学习利用神经网络解决复杂模式识别问题。理解并选择合适算法对提升模型效果至关重要。
388 4
|
存储 NoSQL 算法
深入理解Redis分片Cluster原理
本文深入探讨了Redis Cluster的分片原理,作为Redis官方提供的高可用性和高性能解决方案,Redis Cluster通过数据分片和横向扩展能力,有效降低单个主节点的压力。
深入理解Redis分片Cluster原理
|
Java 数据库
request.setAttribute()详解
request.setAttribute()详解
1039 1
|
缓存 编译器 程序员
C/C++编译器并行优化技术:并行优化针对多核处理器和多线程环境进行优化,以提高程序的并行度
C/C++编译器并行优化技术:并行优化针对多核处理器和多线程环境进行优化,以提高程序的并行度
978 0
STM32Cubemx TB6612直流电机驱动
STM32Cubemx TB6612直流电机驱动
766 0
|
存储 算法 数据挖掘
深入解析力扣166题:分数到小数(模拟长除法与字符串操作详解及模拟面试问答)
深入解析力扣166题:分数到小数(模拟长除法与字符串操作详解及模拟面试问答)
|
机器学习/深度学习 编解码 API
FFmpeg命令行解析
FFmpeg命令行解析
875 1
|
编解码 算法 计算机视觉
轻松掌握FFmpeg编程:从架构到实践
轻松掌握FFmpeg编程:从架构到实践
1155 1
|
弹性计算 大数据 测试技术
阿里云4核8g服务器价格以及收费标准_2024年新版报价
阿里云服务器4核8g配置多少钱一年?1个月费用多少?云服务器u1实例3折优惠价955.58元一年,计算型c7云服务器4核8G价格2944.79元一年。4核8G服务器按月购买比较贵,经济型e实例4核8G配置1个月216元,通用算力型u1服务器336.96元一个月