1249: 全自动奖学金计算系统

时间限制: 1 Sec  内存限制: 64 MB
提交: 305  解决: 54

题目描述

宣城校区从今年开始,在原有奖学金制度上,设立专项奖学金。发放的奖学金共有五种,获取的条件各自不同:
1) 学术奖学金,每人8000元,期末平均成绩高于80分(>80),并且在本学期内发表1篇或1篇以上论文的学生均可获得;
2) 人气奖学金,每人4000元,期末平均成绩高于85分(>85),并且班级互评成绩高于80分(>80)的学生均可获得;
3) 成绩优秀奖,每人2000元,期末平均成绩高于90分(>90)的学生均可获得;
4) 励志奖学金,每人1000元,期末平均成绩高于85分(>85)的贫困学生均可获得;
5) 优秀班干奖,每人850元,班级互评成绩高于80分(>80)的学生干部均可获得;
只要符合条件就可以得奖,每项奖学金的获奖人数没有限制,每名学生也可以同时获得多项奖学金。
例如小明的期末平均成绩是87分,班级互评成绩82分,同时他还是一位学生干部,那么他可以同时获得人气奖学金和优秀班干奖,奖金总数是4850元。
现在给出若干学生的相关数据,请计算哪些同学获得的奖金总数最高(假设总有同学能满足获得奖学金的条件)。
 

输入

输入的第一行是一个整数N(1 <= N <= 100),表示学生的总数。接下来的N行每行是一位学生的数据,从左向右依次是姓名,期末平均成绩,班级互评成绩,是否是学生干部,是否是贫困生,以及发表的论文数。姓名是由大小写英文字母组成的长度不超过50的字符串(不含空格);期末平均成绩和班级互评成绩都是0到100之间的整数(包括0和100);是否是学生干部和是否是贫困生分别用一个字符表示,Y表示是,N表示不是;发表的论文数是0到10的整数(包括0和10)。每两个相邻数据项之间用一个空格分隔。

输出

输出包括三行,第一行是获得最多奖金的学生的姓名,第二行是这名学生获得的奖金总数。如果有两位或两位以上的学生获得的奖金最多,输出他们之中在输入中出现最早的学生的姓名。第三行是这N个学生获得的奖学金的总数。

样例输入

4
LiLiCheng 87 82 Y N 0
PanTing 88 81 Y N 2
YingRuoChen 92 88 Y N 0
MengChunChen 83 87 N N 0

样例输出

PanTing
12850
24550
 
题目大意:不难
解题思路:就很简单,每一次来一个读入,保存一个最大的,然后如果下一次有更大的,就把那个最大的换成这个,最后得到那个最大的。(当年想太多,以为一定要个数组把所有的存起来然后排序什么的)
 
解题代码:
  1. #include <iostream>
  2. #include<math.h>
  3. #include <iomanip>
  4. #include<cstdio>
  5. #include<string>
  6. #include<map>
  7. #include<vector>
  8. #include<list>
  9. #include<algorithm>
  10. #include<stdlib.h>
  11. #include<iterator>
  12. #include<sstream>
  13. #include<string.h>
  14. #include<stdio.h>
  15. using namespace std;
  16. //
  17. int main()
  18. {
  19. //姓名,期末平均成绩,班级互评成绩,
  20. //是否是学生干部,是否是贫困生,以及发表的论文数
  21. string name;
  22. int score,score_stu;
  23. char ganbu,poor;
  24. int lunwen;
  25. int money;//个人的奖学金
  26. //最后输出部分
  27. string maxname;
  28. int maxmoney=;
  29. int tol=;
  30.  
  31. int n;
  32. cin>>n;
  33. while(n--)
  34. {
  35. cin>>name>>score>>score_stu>>ganbu>>poor>>lunwen;
  36. money=;
  37. if(score>&&lunwen>=)
  38. {
  39. money=money+;
  40. }
  41. if(score>&&score_stu>)
  42. {
  43. money=money+;
  44. }
  45. if(score>)
  46. {
  47. money=money+;
  48. }
  49. if(score>&&poor=='Y')
  50. {
  51. money=money+;
  52. }
  53. if(score_stu>&&ganbu=='Y')
  54. {
  55. money=money+;
  56. }
  57.  
  58. tol=tol+money;
  59.  
  60. if(money>maxmoney)
  61. {
  62. maxmoney=money;
  63. maxname=name;
  64. }
  65.  
  66. }
  67. cout<<maxname<<endl;
  68. cout<<maxmoney<<endl;
  69. cout<<tol<<endl;
  70.  
  71. return ;
  72. }

XCOJ 1249: 全自动奖学金计算系统的更多相关文章

  1. 全自动迁移数据库的实现 (Fluent NHibernate, Entity Framework Core)

    在开发涉及到数据库的程序时,常会遇到一开始设计的结构不能满足需求需要再添加新字段或新表的情况,这时就需要进行数据库迁移. 实现数据库迁移有很多种办法,从手动管理各个版本的ddl脚本,到实现自己的mig ...

  2. [原创] Win7全自动精简批处理_绝对原创,绝对给力_感谢无忧给了我一年的潜水

    2011htpcfans发表于 2012-5-5 http://bbs.wuyou.net/forum.php?mod=viewthread&tid=210043 @echo 全自动/手动精简 ...

  3. Win7全自动精简批处理_温柔处理极速修正版/暴力剩女工程测试版

    2011htpcfans 发表于 2012-5-11 http://bbs.wuyou.net/forum.php?mod=viewthread&tid=210269&highligh ...

  4. 转---B/S结构JavaEE WebApp的全自动安装包制作心得

    JavaEE的Web应用程序如今已大行其道,但其安装.配置.部署却一直繁琐无比,客观上阻碍了Web应用程序更大规模的推广和应用.因此,开发方制作一个集JDK.Web中间件.开源数据库的全自动安装程序很 ...

  5. AOP 手动,半自动,全自动

    dao层 package com.yaorange.dao; public interface StudentDao { public void saveStudent(); public void ...

  6. 全自动ARP实时绑定BAT文件

    全自动ARP实时绑定BAT文件 说明一下,这个BVS脚本,它会每六秒钟清除一次ARP缓存.并绑定网关.真正做到了实时防护! 代码如下:请另存为.BAT文件.再运行一下,就可以了 path c:\;c: ...

  7. hdu 1249 三角形

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1249 part=3*s*(s-1)+2 #include<stdio.h> #includ ...

  8. ural 1249. Ancient Necropolis

    1249. Ancient Necropolis Time limit: 5.0 secondMemory limit: 4 MB Aerophotography data provide a bit ...

  9. ACM 谁获得了最高奖学金

    谁获得了最高奖学金 时间限制:1000 ms  |  内存限制:65535 KB 难度:2   描述     某校的惯例是在每学期的期末考试之后发放奖学金.发放的奖学金共有五种,获取的条件各自不同: ...

随机推荐

  1. 磁盘分区(1):fdisk和parted

    一.Linux存储管理 关于Linux硬盘的识别: (1)如果是IDE设备,在计算机中将被识别为hd,第一个IDE设备会被识别为hda,第二个IDE设备会被识别为hdb,依此类推. (2)如果是SAT ...

  2. 转载:EQ--biquad filter

    http://www.musicdsp.org/files/Audio-EQ-Cookbook.txt https://arachnoid.com/BiQuadDesigner/index.html ...

  3. C#中如何将字符串或者字符串数组写入文本文件

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  4. WIN10 设置WEB

    Web服务器搭建步骤(Win10) 1.在“开始”菜单处打开“控制面板”. 2点击“程序”. 3.点击“启动或关闭Windows功能”. 4.对“Internet Information Servic ...

  5. python中使用graphviz环境配置

    去官网下载graphviz,并下一步安装 配置graphviz的bin目录到path环境变量下 python相关包: 使用conda注意:conda install graphviz 可能没用,要使用 ...

  6. pytorch数学运算与统计属性入门(非常易懂)

    pytorch数学运算与统计属性入门1.Broadcasting (维度)自动扩展,具有以下两个重要特征:(1)expand (2)without copying data重点的核心实现功能是:(1) ...

  7. 【PAT甲级】1102 Invert a Binary Tree (25 分)(层次遍历和中序遍历)

    题意: 输入一个正整数N(<=10),接着输入0~N-1每个结点的左右儿子结点,输出这颗二叉树的反转的层次遍历和中序遍历. AAAAAccepted code: #define HAVE_STR ...

  8. 【12】(难&精)【DFS】矩阵中的路径

    题目 矩阵中的路径 请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径.路径可以从矩阵中的任意一格开始,每一步可以在矩阵中向左.右.上.下移动一格.如果一条路径经过了矩阵的某一 ...

  9. Getopt::Long - Extended processing of command line options

    use Getopt::Long; my $data   = "file.dat"; my $length = 24; my $verbose; GetOptions (" ...

  10. linux 磁盘100% 清理

    df -h  查看磁盘使用有一个vdb满了 df   -i 查看inode 使用率 显示文件大小: du -sh /* du参数: -a : 列出所有的文件与目录容量,因为默认仅统计目录下面的文件量而 ...