请问是哪出问题了,谢谢!
  • 板块P1255 数楼梯
  • 楼主brandish
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/6/16 21:04
  • 上次更新2024/6/17 11:44:27
查看原帖
请问是哪出问题了,谢谢!
1330080
brandish楼主2024/6/16 21:04
#include<cstdio>
#include<vector>
using namespace std;
void fun(vector<int>& a, vector<int>& b) {
    vector<int> temp(b.begin(), b.end());
    temp.push_back(0);
    for (int i = 0; i < a.size(); i++) {
        temp[i] += a[i];
    }
    for (int i = 1; i < temp.size(); i++) {
        temp[i] += temp[i - 1] / 10;
        temp[i - 1] %= 10;
    }
    a.swap(b);
    b.swap(temp);
}
int main()
{
    int n;
    scanf("%d",&n);
    vector<int> a, b;
    a.push_back(1);
    b.push_back(1);
    for (int i = 2; i <= n; i++) {
        fun(a, b);
    }
    int index = b.size() - 1;
    while (index >= 0) {
        if (b[index] != 0) break;
        index--;
    }
    for (int i = index; i >= 0; i--) {
        printf("%d", b[index]);
    }
    return 0;
}
2024/6/16 21:04
加载中...