wa了第二个测试点,求助ing

P1255 数楼梯

lqrs @ 2020-07-01 20:48:02

#include <iostream>
using namespace std;

int ans[5005][1000] = {{0},{1},{2}} , len=0;
void fun(int n)
{
    int i , a , b , c;
    for(i=0;i<=len;i++){
        a = ans[n-1][i] , b = ans[n-2][i] , c = ans[n][i];
        if(a+b+c>9)   ans[n][i] = a+b+c-10 , ans[n][i+1]++;
        else    ans[n][i] = a+b+c;
    }
    if(ans[n][len+1])   len++;
}
int main()
{
    int n ;
    cin >> n ;
    for(int i=3;i<=n;i++)
        fun(i);
    for(int i=len;i>=0;i--)
        cout << ans[n][i];
    return 0 ;
}

by JRzyh @ 2020-07-01 20:52:41

@lqrs 特判


by fresh_boy @ 2020-07-01 21:11:19

这是数楼梯.....蒟蒻没看出来,真的


by SIXIANG32 @ 2020-07-01 21:12:06

@lqrs

为啥我记得这要高精度啊QwQ
一定是我神经过敏了QAQ


by lqrs @ 2020-07-01 21:18:11

@Zhaoyuhang2008 我数组开小了,还是谢谢你!ahhhhhh


by lqrs @ 2020-07-01 21:19:45

第二个点数据有点大ahhhhhhh我还以为测试点的数据是越到后面数据越大


by root1729 @ 2020-08-04 20:02:40

@lqrs 对对对,我也是数组开小了,超过一千位的数我也没想到的


by lqrs @ 2021-07-21 09:07:30

哈哈哈哈哈谢谢大家,我是数组开小了


|