第十届蓝桥杯补题

第十届蓝桥杯C/C++

第十届蓝桥杯补题_第1张图片
容易看出来,这个是进制转换的思路
把十进制转换成26进制。
满26进一个 ‘A’

可以把’A’当作0 ,‘Z’当作 25

代码是越简单越好。

#include 
using namespace std;
int main()
{
	string ans = "";
	int n = 0;
	cin >> n;
	while (n)
	{
		if (n % 26 == 0) ans += 'Z';
		else
		{
			ans += 'A' + n % 26 - 1;
		}
		n--;
		n = n / 26;
	}
	cout << ans << endl;  //真实答案是这个ans 的逆序串,但是这里可以不用那么麻烦。自己逆序就行
}

第十届蓝桥杯补题_第2张图片C题数列求值

容易看出,这个是斐波那契数列。

但是最后四个数字怎么看? 可以看成对1000取余数。比如190201 ,就是201 ,第四位的0不管。

你可能感兴趣的:(算法)