返回题解分享
讨论 / 题解分享/ 帖子详情

类斐波那契循环数(结果填空) - 题解

把题目公式翻译为代码, 然后模拟即可

#include <iostream>
#include <string>
#include <vector>
#include <numeric>
#include <algorithm>

using namespace std;

using ll = long long;

int main() {
	int n = 1e7;
	for (int i = n; i >= 197; --i) {
		vector<int> mae;
		int x = i;
		while (x) {
			mae.push_back(x % 10);
			x /= 10;
		}
		mae = {mae.rbegin(), mae.rend()};
		int n = mae.size();
		ll s = 0;
		for (int k = n; s < i; ++k) {
			s = 0;
			for (int c = k - n; c < k; ++c) {
				s += mae[c];
			}
			mae.push_back(s);
		}
		if (s == i) {
			cout << i << '\n';
			return 0;
		}
	}
	return 0;
}
0 回复 0 转发 1 喜欢 4 阅读
回复 (0)
默认 最新
暂无回复,快来抢沙发!