ACM之路刚刚开始

简介: 其实我完全没甚么废话好说的,只是希望养成一个总结的好习惯。让自己以后思路更加清晰。 比如说下面的一道来自杭电的ACM-Steps的一道比较简单的题目,但是为甚么多次提交都是错误,可是不管怎么调试都是对的,其实是题目没有好好看。

其实我完全没甚么废话好说的,只是希望养成一个总结的好习惯。让自己以后思路更加清晰。

比如说下面的一道来自杭电的ACM-Steps的一道比较简单的题目,但是为甚么多次提交都是错误,可是不管怎么调试都是对的,其实是题目没有好好看。


GPA

Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 3580 Accepted Submission(s): 1466
 
Problem Description
Each course grade is one of the following five letters: A, B, C, D, and F. (Note that there is no grade E.) The grade A indicates superior achievement , whereas F stands for failure. In order to calculate the GPA, the letter grades A, B, C, D, and F are assigned the following grade points, respectively: 4, 3, 2, 1, and 0.
 
Input
The input file will contain data for one or more test cases, one test case per line. On each line there will be one or more upper case letters, separated by blank spaces.
 
Output
Each line of input will result in exactly one line of output. If all upper case letters on a particular line of input came from the set {A, B, C, D, F} then the output will consist of the GPA, displayed with a precision of two decimal places. Otherwise, the message "Unknown letter grade in input" will be printed.
 
Sample Input
A B C D F
B F F C C A
D C E F
 
Sample Output
2.00
1.83
Unknown letter grade in input
 
Author
2006Rocky Mountain Warmup
 
Source
HDU “Valentines Day” Open Programming Contest 2009-02-14
 
Recommend
lcy
这道题其实真的没有什么难度,但是输出格式还是要注意,尤其对于我这样的低级新手来说

The input file will contain data for one or more test cases, one test case per line. On each line there will be one or more upper case letters, separated by blank spaces.

这句话真的是一定要好好读清楚。

所以修正之后最后的代码应为:

#include<cstdio>

using namespace std;

int main(){	
	char rank;
	double score = 0.0;
	int cnt = 0;
	int flag2 = 1;
		while(scanf("%c",&rank) != EOF){
			if (rank == ' ')
				continue;
			if	(rank == '\n'){
				if(flag2){
					printf("%.2f\n",score/cnt);
				}else{
					printf("Unknown letter grade in input\n");
				}
				flag2 = 1;
				cnt = 0;
				score = 0;
				continue;
			}
			if(rank == 'A')
				score += 4;
			else if(rank == 'B')
				score += 3;
			else if(rank == 'C')
				score += 2;
			else if(rank == 'D')
				score += 1;
			else if(rank == 'F')
				score += 0;
			else{
				flag2 = 0;
			}
			cnt ++;
		}
	return	0;
}

嗯这是第一篇,如有兴趣的朋友,也请多指正。
相关文章
技术人修炼之道阅读笔记(三)顶级工程师行为准则
技术人修炼之道阅读笔记(三)顶级工程师行为准则
|
Java C语言 C++
ACM刷题之路(二)谈谈我对ACM的理解
ACM刷题之路(二)谈谈我对ACM的理解
121 0
|
IDE Cloud Native 关系型数据库
第三届云原生编程挑战赛(赛道三)参赛心得 -《蜻蜓Studio》
蜻蜓 Studio是一款完全基于阿里云云原生技术进行构建的 Serverless Web IDE。其具有极佳的性能体验,提供VS Code和Jupyter Notebook两种编辑器,更有多种编辑器环境可供选择,只需3秒即可从零完成一个工作区创建。同时,借助 Serverless 架构很轻易的实现了多租户隔离,并且通过容器保护层(QingTing-Shell)保证了每位用户只能访问自己的工作区,使得整体IDE服务可扩展,高性能,低成本。此外具备数据同步和故障恢复的能力,IDE可以在网络故障或实例故障时进行恢复。
298 1
第三届云原生编程挑战赛(赛道三)参赛心得 -《蜻蜓Studio》
|
Cloud Native 架构师 中间件
2022 云原生编程挑战赛圆满收官,见证冠军战队的诞生
11 月 3 日,天池大赛·第三届云原生编程挑战赛在杭州云栖大会圆满收官。三大赛道18大战队手历经 3 个月激烈的角逐,终于交上了满意的答卷,同时也捧回了属于他们的荣耀奖杯。
2022 云原生编程挑战赛圆满收官,见证冠军战队的诞生
|
机器学习/深度学习 自然语言处理 达摩院
阿里研究成果|学习笔记
快速学习阿里研究成果
303 0
阿里研究成果|学习笔记
|
边缘计算 Kubernetes 监控
登顶之路|数字海南架构师谈云原生编程挑战赛参赛心路历程
云原生编程挑战赛项目组特别策划了《登顶之路》系列选手访谈,期待通过参赛选手的故事,看到更加生动鲜活的中国开发者。
登顶之路|数字海南架构师谈云原生编程挑战赛参赛心路历程
|
运维 Cloud Native IDE
官宣!第三届云原生编程挑战赛正式启动!
如今,越来越多开发者加入到云原生开发浪潮中:据《云原生开发现状报告》显示,全球云原生开发人员达 680 万,与 2020 年 5 月报告的云原生开发者数量 470 万相比,全球云原生开发人员数量正在极速增长。
官宣!第三届云原生编程挑战赛正式启动!
|
供应链 JavaScript 前端开发
开源会走上违心之路吗?
开源项目越“成功”,它给维护者带来的压力就越大。
176 0
|
机器学习/深度学习 人工智能 自然语言处理
蚂蚁金服首届ATEC开发者大赛人工智能大赛圆满落幕,一文详解最佳解题方案
一个历时 4 个多月、吸引了 5618 位参赛选手、Michael I. Jordan 和蚂蚁金服 CTO 亲自在证书上签名的大赛。
885 0
蚂蚁金服首届ATEC开发者大赛人工智能大赛圆满落幕,一文详解最佳解题方案
|
运维 Kubernetes Cloud Native
首届云原生编程挑战赛精彩盘点:他们如何从10000多支团队中脱颖而出?
从大赛中发掘新鲜的技术力量,让云原生技术激发更多企业的生命力。
1035 5
首届云原生编程挑战赛精彩盘点:他们如何从10000多支团队中脱颖而出?