求调QwQ
查看原帖
求调QwQ
1277657
Yaoshui_lv楼主2024/10/2 20:15

如下代码

样例 10
输出 9
答案 89

请各位巨佬们看一看哪里错了QwQ

#include <iostream>
#include <vector>
using namespace std;
vector < vector <int> > ans(5010);

vector<int> add(vector <int> a, vector <int> b) {
	vector < int > c;
	vector < int > ans;
	for (int i = 0; i < max(a.size(), b.size()); i++) {
		ans.push_back(a[i]+b[i]);
		ans[i+1] = ans[i]/10;
		ans[i] = ans[i] % 10;
	}
	for (int i = ans.size()-1; i >= 0; i--) {
		c.push_back(ans[i]);
	}
	return c;
}

signed main() {
	int n;
	cin >> n;
	ans[1].push_back(1);
	ans[2].push_back(2);
	for (int i = 3; i <= n; i++) {
		ans[i] = add(ans[i-1], ans[i-2]);
	}
	bool flag = true;
	for (int i = 0; i < ans[n].size(); i++) {
		if (flag) {
			if (ans[n][i] == 0) continue;
			else flag = 0;
		}
		cout << ans[n][i];
	}
	
	return 0;
}
2024/10/2 20:15
加载中...