PAT解题1012
来源:互联网 发布:林志炫为什么不火 知乎 编辑:程序博客网 时间:2024/05/29 21:34
1012. 数字分类 (20)
给定一系列正整数,请按要求对数字进行分类,并输出以下5个数字:
输入格式:
每个输入包含1个测试用例。每个测试用例先给出一个不超过1000的正整数N,随后给出N个不超过1000的待分类的正整数。数字间以空格分隔。
输出格式:
对给定的N个正整数,按题目要求计算A1~A5并在一行中顺序输出。数字间以空格分隔,但行末不得有多余空格。
若其中某一类数字不存在,则在相应位置输出“N”。
输入样例1:13 1 2 3 4 5 6 7 8 9 10 20 16 18输出样例1:
30 11 2 9.7 9输入样例2:
8 1 2 4 5 6 7 9 16输出样例2:
N 11 2 N 9
解答
#include<iostream>
#include<iomanip>
using namespace std;
int main(){
int n;
cin>>n;
int num[1000];
for(int i=0;i<n;i++){
cin>>num[i];
}
int a1=0,a2=0,a3=0,a4=0,a5=0;
int a4num=0;
bool f=false;
bool is=false;
bool isi=false;
for(int i=0;i<n;i++){
switch(num[i]%5){
case 0:if(num[i]%2==0)a1+=num[i];break;
case 1:if(f==false){a2+=num[i];f=true;}else{a2-=num[i];f=false;}is=true;break;
case 2:a3++;break;
case 3:a4+=num[i];a4num++;break;
case 4:if(num[i]>a5)a5=num[i];isi=true;break;
}
}
if(a1!=0)
cout<<a1<<" ";
else cout<<"N ";
if(is)
cout<<a2<<" ";
else cout<<"N ";
if(a3!=0)
cout<<a3<<" ";
else cout<<"N ";
if(a4!=0){
cout<<setprecision(2)<<(a4*1.0)/a4num<<" ";}
else cout<<"N ";
if(isi)
cout<<a5;
else cout<<"N";
cin.get();
cin.get();
return 0;
}
- PAT解题1012
- PAT解题报告索引
- PAT-1010解题报告
- PAT-1021解题报告
- PAT 解题报告
- pat解题报告【1076】
- pat解题报告【1073】
- pat解题报告【1078】
- pat解题报告【1082】
- pat解题报告【1074】
- PAT解题1013
- PAT解题1015
- PAT解题报告A1111
- PAT解题报告A1087
- PAT乙级解题报告目录
- 解题报告-PAT-List Leaves
- 解题报告-PAT-File Transfer
- PAT甲级解题报告汇总
- 在ubuntu上安装并运行NATS Server -- gnastd:未找到命令
- EXCEL中的vlookup
- 浅谈C/C++内存泄露及其检测工具
- 关于Oracle 12C pdb用户无法登录的问题
- 加锁实例
- PAT解题1012
- Git branch lost
- ZOJ-3931-Exact Compression【dp】【bitset】【好题】
- Android WebView缓存机制详解
- J2EE中使用jstl报http://java.sun.com/jsp/jstl/core cannot be resolved in either web.xml or the jar错
- SlideMenuDemo
- 为什么要加上拉电阻和下拉电阻
- label中的文字类似跑马灯的效果
- 基于状态机的调度机制需要包含的四个要素