java编程两个超长正整数相减_【每日编程237期】数字分类
每日编程中遇到任何疑问、意见、建议请公众号留言或直接撩Q474356284(备注每日编程)
给定一系列正整数,请按要求对数字进行分类,并输出以下 5 个数字:
A1 = 能被 5 整除的数字中所有偶数的和;
A2 = 将被 5 除后余 1 的数字按给出顺序进行交错求和,即计算 n1−n2+n3−n4⋯;
A3 = 被 5 除后余 2 的数字的个数;
A4 = 被 5 除后余 3 的数字的平均数,精确到小数点后 1 位;
A5 = 被 5 除后余 4 的数字中最大数字。
输入格式:
每个输入包含 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
解决方法:
(1)算法的基本思想:
这道题坑比较多。
①输入的第一个数字是,输入数字的个数!不是需要计算的数字。
②交错求和,可以用下标控制,也可增加一个flag,每次乘以-1。
而且需要一个变量来记录是否有“交错求和”的条件,也就是必须要两个数才满足条件,如果只有一个数除以5的余数为1,那么亦不符合条件(这也是下输出的判断语句中为何判断的是 t 而不是 A2 )。
③A4定义要是double型才可以,%0.1lf控制输出格式为小数点后一位。
(2)代码实现:
//灰灰考研/*13 1 2 3 4 5 6 7 8 9 10 20 16 18*/#includeint main(){ int i,n,a[1001],A1,A2,A3,count; scanf("%d",&n); A1 = A2 = A3 = count = 0; int t = 0; double A4 = 0; int flag = 1,A5 = 0; for(i = 1;i <= n; i++) { scanf("%d",&a[i]); if(a[i] % 5 == 0 && a[i] % 2 == 0) A1 += a[i];
if(a[i] % 5 == 1){ A2 += a[i] * flag; flag = flag * -1; t++; }
if(a[i] % 5 == 2) A3++;
if(a[i] % 5 == 3){ A4 += a[i];//后面要除以个数count count++; }
if(a[i] % 5 == 4){ if(a[i] > A5) A5 = a[i]; } }
if(A1 == 0) printf("N "); else printf("%d ",A1); if(t == 0) printf("N "); else printf("%d ",A2); if(A3 == 0) printf("N "); else printf("%d ",A3); if(A4 == 0) printf("N "); else printf("%.1lf ",A4/(count*1.0)); if(A5 == 0) printf("N"); else printf("%d",A5);
return 0;}
明日预告:1013 数素数
令 Pi 表示第 i 个素数。现任给两个正整数 M≤N≤104,请输出 PM 到 PN 的所有素数。
输入格式:
输入在一行中给出 M 和 N,其间以空格分隔。
输出格式:
输出从 PM 到 PN 的所有素数,每 10 个数字占 1 行,其间以空格分隔,但行末不得有多余空格。
输入样例:
5 27
输出样例:
11 13 17 19 23 29 31 37 41 4347 53 59 61 67 71 73 79 83 8997 101 103
java编程两个超长正整数相减_【每日编程237期】数字分类相关推荐
- pgsql 两个时间字段相减_如何在Excel做专业的时间序列分析
一.工具产生背景 在生产中我们常会根据历史数据去预测未来的发展趋势.比如客户投诉量.用户留存率.页面点击率等等. 对于预测功能的需求多但是具备相应能力的分析师却很少.想做出一份精准的预测需要具备很多专 ...
- 中两个查询结果相减_位移差?应力差?利用fish语言实现结果文件间运算。
重要通知:本公众号已开通赞赏功能,各位读者老爷有钱的可以给呱太捧个钱场!推荐使用微信PC端进行阅读,以避免命令流显示畸变.文章所附命令流均可直接复制到FLAC3D 6.0中运行,若有报错,请手动重输命 ...
- 两个年月日怎么相减_(excle可以计算日期差值吗)excel表中,两个日期相减如何得出相差年月...
如何使用excel函数计算两个日期参数的差值 "使用excel函数计算两期参数的差值"的操骤是: 1.以Excel 2016为例,打开Excel工作表: 2.由已知条件可知,需要根 ...
- 两个年月日怎么相减_会议记录应该怎么记?看这里
[会议记录应该怎么记?] 一.会议记录是什么? 会议记录是将一场线上或者线下的会议的核心内容.基本信息.议程.结果等以文字.表格.图片等形式记录下来的信息合集. 好的会议记录具有尊重事实.高度清晰.总 ...
- 两个数组结果相减_学点算法(三)——数组归并排序
今天来学习归并排序算法. 分而治之 归并算法的核心思想是分而治之,就是将大问题转化为小问题,在解决小问题的基础上,再去解决大问题.将这句话套用到排序中,就是将一个大的待排序区间分为小的待排序区间,对小 ...
- 两个年月日怎么相减_用EXCEL表格怎么进行年月日的加减??
2007-09-21 excel里时间(时,分,秒,百分秒)进 是否有这个函数,我不太清楚,我用VBA自己编写了一个,两种方式,任你选择,第二种方式,可以根据实际情况调整循环的大小.单元格的位置. 如 ...
- sql中两个时间类型相减得到的值
原文地址为: sql中两个时间类型相减得到的值 原文地址:http://my.oschina.net/zimingforever/blog/57504 sql中两个时间类型相减得到的值 今天有人把数据 ...
- mysql中日期相减_非凡教育教你excel怎么计算两个日期天数差和时间差
商务办公培训老师在本文中主要是介绍如何在excel中计算日期和时间,包括两个日期之间的天数.时间之间的差和显示样式. 首先,计算两个日期之间的天数.在excel中,两个日期直接相减就可以得到两个日期间 ...
- C++学习 1: 两个无符号数相减
两个无符号数相减得到一个负数,如-6减去-7 int main() {unsigned i1 = 6, i2 = 7;cout << i1 - i2;return 0; } 正确答案是-1 ...
最新文章
- 【FFmpeg】结构体详解(一):AVCodec、AVCodecContext、AVCodecParserContext、AVFrame、AVFormatContext 、AVIOContext
- Redis连接出现Error: Connection reset by peer的问题是由于使用Redis的安全模式
- 白话数字签名(番外篇)——签名EXE文件(下)
- win7无法将应用程序锁定到任务栏的几种解决方法
- [css] 为什么要使用sass/less?
- CMapStringToPtr::SetAt\CAsyncSocket
- 入门实践,Python数据分析
- 分布式devops_维护分布式团队的DevOps心态的10个技巧
- 002Linux应用领域
- chrome全屏隐藏状态栏_PS技巧丨18个让你相见恨晚的PS隐藏技巧!
- 【例题 7-2 UVA - 11059】Maximum Product
- 一个项目从立项到终结
- 尚硅谷docker基础篇 2018版
- 华为硬件工程师等公司的面试经历分享
- Java实现中国象棋(联机版)
- 连载《国培计划》骨干教师的研修日志之八:米新江教授讲座有感
- 成人学习国画可能产生哪些错误的思想?
- 华为天才少年造出自动驾驶单车!图纸已开源,硬件成本一万,B站老板:重新定义「自行」车
- import caffe出错:libcaffe.so.1.0.0-rc3: undefined symbol: _ZN2cv8imencodeERKNSt7__cxx1112basi
- bootstrap实例《一》星巴克官网
热门文章
- 黄金分割法与单峰函数求极值
- Python 数据结构与算法——从某个列表中找出两个彼此最接近但不相等的数
- 面向对象——意图与逻辑(五)
- BP神经网络——如何进行权值的初始化
- excel 日期加时间java程序里被转成浮点型_Java工具类之:包装类
- java布尔三目运算符_Java关系运算符,boolean运算符,三元运算符
- 原始数据格式无法识别_虹膜识别技术优势明显 为何难以开启“刷眼“时代
- python基础30个常用代码-30个Python常用极简代码,拿走就用
- python难学吗-Python为什么那么受欢迎?学习Python难不难?
- 语音识别看似神通广大 但它真的听得懂方言么