问题描述
已知四个数:a,b,c,d,判断在第s个Fibonacci数到第t个Fibonacci数之间哪些数既不是a也不是b也不是c也不是d的倍数。
输入格式
第一行两个数,s,t,表示要判断第s个Fibonacci数到第t个Fibonacci数之间(包含第s个和第t个)的Fibonacci数。
第二行四个数,a,b,c,d,意义如题目描述。
输出格式
一行若干个数,A1,A2,A3...An,从小到大排列,表示第Ai个Fibonacci数既不是a也不是b也不是c也不是d的倍数。
每两个数之间用空格隔开。
样例输入
1 5
2 3 5 7
样例输出
1 2
数据规模和约定
1<=s<=t<=10000, 1<=a,b,c,d<=10000
#include <iostream>
#include <vector>
int fibonacci(int n) {
if (n <= 2) {
return 1;
}
int a = 1, b = 1, c;
for (int i = 3; i <= n; ++i) {
c = a + b;
a = b;
b = c;
}
return c;
}
bool isMultiple(int num, int a, int b, int c, int d) {
return (num % a != 0) && (num % b != 0) && (num % c != 0) && (num % d != 0);
}
int main() {
int s, t, a, b, c, d;
std::cin >> s >> t >> a >> b >> c >> d;
std::vector<int> result;
for (int i = s; i <= t; ++i) {
int fibNum = fibonacci(i);
if (isMultiple(fibNum, a, b, c, d)) {
result.push_back(fibNum);
}
}
for (int i = 0; i < result.size(); ++i) {
std::cout << result[i];
if (i != result.size() - 1) {
std::cout << " ";
}
}
std::cout << std::endl;
return 0;
}
我为啥错了
Fibonacci数列整除问题
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
5条回答 默认 最新
关注 引自免费微信小程序:皆我百晓生
您的代码基本上是正确的,但是在输出结果时,缺少了换行符。为了修复这个问题,请在循环结束后添加一个换行符。以下是修改后的代码:
#include <iostream> #include <vector> int fibonacci(int n) { if (n <= 2) { return 1; } int a = 1, b = 1, c; for (int i = 3; i <= n; ++i) { c = a + b; a = b; b = c; } return c; } bool isMultiple(int num, int a, int b, int c, int d) { return (num % a != 0) && (num % b != 0) && (num % c != 0) && (num % d != 0); } int main() { int s, t, a, b, c, d; std::cin >> s >> t >> a >> b >> c >> d; std::vector<int> result; for (int i = s; i <= t; ++i) { int fibNum = fibonacci(i); if (isMultiple(fibNum, a, b, c, d)) { result.push_back(fibNum); } } for (int i = 0; i < result.size(); ++i) { std::cout << result[i]; if (i != result.size() - 1) { std::cout << " "; } } std::cout << std::endl; // 添加了换行符 return 0; }
现在,这个程序应该可以正确地处理输入并输出满足条件的Fibonacci数,每个数之间用空格分隔,并且在最后一个数后面加上换行符。
解决 无用评论 打赏 举报 编辑记录
悬赏问题
- ¥15 verilog 非阻塞赋值下的移位拼接错误
- ¥100 两个按钮控制一个LED
- ¥15 用C语言写离散数学相关问题
- ¥30 如何用python的GephiStreamer连接到gephi中,把Python和Gephi的具体操作过程都展示,重点回答Gephi软件的调试,以及如果代码的端口在浏览器中无法显示怎么处理
- ¥15 ansys机翼建模肋参数
- ¥15 Sumo软件无法运行
- ¥15 如何在vscode里搭建stata的编辑环境?
- ¥15 dify知识库创建问题
- ¥15 如何用C#的chart画1000万个点不卡顿
- ¥15 爬虫技术找到网上看过房源客户的电话