每日一题 | day32(斐波那契数列凤尾)
Posted WhiteShirtI
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了每日一题 | day32(斐波那契数列凤尾)相关的知识,希望对你有一定的参考价值。
选择题
1、不属于交换机攻击的是()
A 目录遍历攻击
B MAC泛洪攻击
C VLAN攻击
D DHCP欺骗攻击
正确答案 A:一次目录遍历攻击(directory traversal attack)通常利用了“服务器安全认证缺失”或者“用户提供输入的文件处理操作”,使得服务器端文件操作接口执行了带有“遍历父文件目录”意图的恶意输入字符。
编程题
题目1:
题解思路:由于每次都要计算斐波那契数列,我们可以将斐波那契数列的值保存在一个数组中。题目给出n的范围最大是100000,为了和天数对应上,我们可以多开一个空间。在计算斐波那契数列中,当达到2位数时其实数字就已经很大,题目要求说当数值超过6位时只需要输出后6位即可,所以我们在计算的过程中可以对得出来的数字模上1000000,因为加法时候低位向高位相加的,省略高位对低位并不会有影响,并且我们设置一个border变量,用于记录哪天的的值开始超过6位数,输出需要特殊处理
代码:
#include <iostream>
#include <cstdio>
using namespace std;
int main()
{
int border = -1;
long long ans[100001];
ans[0] = 1;
ans[1] = 1;
for (int i = 2; i < 100001; ++i)
{
ans[i] = ans[i-1] + ans[i-2];
if (border == -1 && ans[i] >= 1000000)
border = i;//阙值
ans[i] %= 1000000;
}
int n;
while (cin >> n)
{
long long f = ans[n];
if (n >= border)//大于6位数
printf("%06d\\n", f);
else
printf("%d\\n", f);
}
}
以上是关于每日一题 | day32(斐波那契数列凤尾)的主要内容,如果未能解决你的问题,请参考以下文章