PAT 甲级:1108. Finding Average
来源:互联网 发布:火影忍者抄袭知乎 编辑:程序博客网 时间:2024/06/06 01:15
这题的主要难点在于考虑所有非法数字的情况。
#include<cstdio>#include<iostream>#include<iomanip>#include<algorithm>#include<vector>#include<queue>#include<string.h>#include<stack>#include<string>#include<math.h>using namespace std;const int maxn=1001;bool islegal(string s){//+-号,多个小数点,小数点后面位数过多,包含其他字母int pos=0;if(s[pos]=='-') pos++;if(pos==s.length()) return false;//只有一个负号int cnt=0;//记录小数点的个数for(int i=pos;i<s.length();i++){if(s[i]=='.'){cnt++;if(cnt>1) return false;if(s.length()-1-i>2) return false;}else if(s[i]<'0'||s[i]>'9') return false;}double d;sscanf(s.c_str(),"%lf",&d);if(d<-1000||d>1000) return false;return true;}int main(){int n;cin>>n;double sum=0;int cnt=0;for(int i=0;i<n;i++){string s;cin>>s;if(islegal(s)){double d;sscanf(s.c_str(),"%lf",&d);sum+=d;cnt++;}else{cout<<"ERROR: "<<s<<" is not a legal number"<<endl;}}if(cnt==0){cout<<"The average of 0 numbers is Undefined"<<endl;}else if(cnt==1){cout<<"The average of 1 number is "<<fixed<<setprecision(2)<<sum/cnt<<endl;}else{cout<<"The average of "<<cnt<<" numbers is "<<fixed<<setprecision(2)<<sum/cnt<<endl;}return 0;}
0 0
- PAT 甲级:1108. Finding Average
- pat 甲级 1108. Finding Average
- PAT 甲级 1108. Finding Average (20)
- 1108. Finding Average (20)-PAT甲级真题
- PAT--1108. Finding Average
- 【PAT】1108. Finding Average
- pat 1108. Finding Average
- 1054. 求平均值 (20) PAT乙级&&1108. Finding Average (20)PAT甲级
- [pat]1108. Finding Average (20)
- PAT 1108. Finding Average (20)
- pat 1108. Finding Average (20)
- 【PAT】【Advanced Level】1108. Finding Average (20)
- Pat(A) 1108. Finding Average (20)
- PAT 1108 Finding Average
- 1108. Finding Average (20)
- 1108. Finding Average
- 1108. Finding Average (20)
- 1108. Finding Average (20)
- 如何去设计一个自适应的网页设计或HTMl5
- MIPS 大端序和小端序的问题
- deal.II链接PETSc过程记录
- RecyclerView+OkHttp加载刷新
- C/C++中用va_start/va_arg/va_end实现可变参数函数的原理与实例详解 .
- PAT 甲级:1108. Finding Average
- 优酷hadoop mapred 面试题[find friends]
- android 桌面小部件
- 非常详细的 Docker 学习笔记
- POJ 3268 - Shortest Path Dijstra+ SPFA
- jquery判断checkbox是否选中及改变checkbox状态
- chrome拖拽鼠标样式bug
- CRT无法连接linux的问题
- x^(1/x)相关问题极限求解思路