题目描述
小宇正在读小学,今天老师布置了几道数学题目。小宇平时上课经常不专心,这些他可发愁了,怎么办呢?看看你能不能帮帮他。
题目是给你一组有规律序列的前面5个整数,请你给出它后面跟着的5个整数,如:1,2,3,4,5,___,___,_,,___。这是个等差数列,后面应该是6,7,8,9,10,就这么简单。而且现在小宇已经知道这串序列要么是等差数列,要么是等比数列或者是斐波那契数列。
输入

输入包含多组测试数据。每组输入5个整数,每个数字之间隔一个空格,当5个数字都为0时输入结束。

输出

对于每组输入,输出这串数列的后面5个数字,每个数字之间隔一个空格。

样例输入

1 2 3 4 5
1 2 4 8 16
1 2 3 5 8
0 0 0 0 0

样例输出

6 7 8 9 10
32 64 128 256 512
13 21 34 55 89

本题思路很简单但是不容易AC

要注意

  • 两数相比会有以下情况:256 128 64 32 16,所以公比定义为double且需要强制类型转换,否则后五个数会输出 0 0 0 0 0
  • 公差和公比的定义应写在 if 语句内
  • 判断条件应该写完整,否则无法清楚判断2 4 6 10 16这种数据究竟是等差数列还是Fibonacci数列
  • 用b - a == c - b && c - b == d - c && d - c == e - d判断是否是等差数列
  • 用b / a == c / b && c / b == d / c && d / c == e / d判断是否是等比数列且所有两数之比都要加上double否则不能AC(精度问题)
  • 用a + b == c && b + c == d && c + d == e判断是否是Fibonacci数列

AC代码

#include <algorithm>
#include <iostream>
#include <cstring>
#include <cstdio>using namespace std;int main()
{int a,b,c,d,e;//abcde不全为0while (cin >> a >> b >> c >> d >> e && (a || b || c || d || e)){int f,g,h,i,j;//公差相等 if (b - a == c - b && c - b == d - c && d - c == e - d) {int d1 = b - a;f = e + d1;g = f + d1;h = g + d1;i = h + d1;j = i + d1;}//公比相等else if ((double)b / a == (double)c / b && (double)c / b== (double)d / c && (double)d / c == (double)e / d){double q1 = (double)b / a;//公比(强转为double解决相比为0的情况)f = e * q1;g = f * q1;h = g * q1;i = h * q1;j = i * q1;}//Fibonacci 2 4 6 10 16else if (a + b == c && b + c == d && c + d == e){f = d + e;g = e + f;h = f + g;i = g + h;j = h + i;}cout << f << " " << g << " " << h << " ";cout << i << " " << j << endl;}return 0;
}

找规律填数字(难AC,细节多)相关推荐

  1. 找规律填数字(c++基础)

    题目描述: 小宇正在读小学,今天老师布置了几道数学题目.小宇平时上课经常不专心,这些他可发愁了,怎么办呢?看看你能不能帮帮他. 题目是给你一组有规律序列的前面5个整数,请你给出它后面跟着的5个整数,如 ...

  2. 【模拟】找规律填数字

    描述 小瑜还在读幼儿园呢,现在的小孩子正够可怜的- 这不,老师给孩子们布置了一道连很多大人都不会的数学题目.且看: 给你一组有规律序列的前面5个整数,请你给出它后面跟着的5个整数,如:1,2,3,4, ...

  3. LeetCode 481. 神奇字符串(找规律)

    1. 题目 神奇的字符串 S 只包含 '1' 和 '2',并遵守以下规则: 字符串 S 是神奇的,因为串联字符 '1' 和 '2' 的连续出现次数会生成字符串 S 本身. 字符串 S 的前几个元素如下 ...

  4. [益智]:找规律习题

    1.5.36.354下一个数是什么? A. 3675 B. 4200 C. 4425 正确答案: C 答案解析: 1=1的一次方 5=2的二次方+1的二次方 36=3的三次方+2的三次方+1的三次方 ...

  5. (找规律)3,5,7,2,4,11,7,5,29,23,? 填什么数字

    找规律一般都是 数字与序号 加减乘除.平方.平方和.平方差等之间相互运算. 解析:化整为零,单独看一个分支,3,5,7. 7 = (3 x 5) - (3 + 5) 5 = (7 x 2) - (7 ...

  6. (找规律)6,24,60,120,? 下一个填什么数字

    找规律一般都是 数字与序号 加减乘除.平方.平方和.平方差等之间相互运算. 解析:看数字都是6的倍数,就先简化一下数字,让数字尽可能小一点.然后发现与序号之间有关联 答案:?=210

  7. 【每日一题Day35】LC878第N个神奇数字 | 二分查找 找规律 + 数学

    第N个神奇数字[LC878] 一个正整数如果能被 a 或 b 整除,那么它是神奇的. 给定三个整数 n , a , b ,返回第 n 个神奇的数字.因为答案可能很大,所以返回答案 对 109 + 7 ...

  8. string 找出所有数字 index_发现规律,解决整数转罗马数字

    嗨,各位!我们又准时见面了,即将迎来难得的周末时光,我们今天来一道相对简单的题目逻辑梳理的题目,原定的动态规划的常见题型我们放在周末进行更新.话不多说,我们先看题目:  01 . 题目罗马数字包含以下 ...

  9. 埃森哲杯第十六届上海大学程序设计联赛春季赛暨上海高校金马五校赛 F- 1 + 2 = 3? (好难的找规律题)

    斐波那契真的牛掰 题目链接 题目描述: 小Y在研究数字的时候,发现了一个神奇的等式方程 ,他屈指算了一下有很多正整数x满足这个等式,比如1和2,现在问题来了,他想知道从小到大第N个满足这个等式的正整数 ...

最新文章

  1. 运营人,你敢转发给你老板看吗?
  2. 今天收到上海某公司的全英文笔试题(some question of interview )
  3. 外媒:ATT宣布加入SD-WAN阵营
  4. 让美团、京东、搜狐都说好的数据仓库,牛在哪?
  5. el-tooltip位置不灵活_要提高步伐移动的灵活性,注意这5点,加以改正,步伐不再沉重...
  6. 将markdown文本转换为微信文章格式的解决方案
  7. 使用jQuery实现全选、全不选、 反选(button)
  8. Go 编码建议——项目布局
  9. 使用 Nginx 部署静态页面
  10. 深入理解BigDecimal
  11. 移动医疗的服务怎么做?来听听传统医疗器械厂商怎么说
  12. mysql常用监控脚本命令列表
  13. 心电图分析软件_心电图、心脏彩超、心脏冠脉造影、无创冠脉磁共振的区别及用途...
  14. matlab画图实例_自定义函数
  15. C/C++中的五个预定义的宏名
  16. 【转】推送消息推送机制
  17. 时序预测方法——指数平滑法(Holt-Winters)
  18. 软件机器人实现一键报税,即使没有开发接口,纳税申报也照样方便、快捷
  19. Python小炼(1):初识Python
  20. 电烙铁使用方法,diy套件

热门文章

  1. Vue3 移动端浏览器底部工具栏挡住部分网页,以及ios网页放大滑动问题。
  2. 关于chatgpt等类ai是否具有意识的杂谈
  3. 《springboot实战》学习笔记
  4. 创建bbs mysql语句怎么写_MySQL常用语句 | 小灰灰博客
  5. 欧卡2在线服务器返回数据错误,omsi2开启时报错是怎么回事
  6. 全球及中国汽车取力器(PTO)行业销售策略及供需前景预测报告2022-2027
  7. stm32zet6自制简易示波器
  8. BPSK带宽频率估计
  9. 城墙(sandcas.pas/cpp)
  10. 海思芯片图形层的开发指南与方案