作业介绍
我们知道形如abba这样的数字是偶位回文,显然第一个是11,第二个是22,第abc个一定是abccba,那么前N个和只要将1-N每个数字做一个回文处理,然后相加即可
#include <bits/stdc++.h>
using namespace std;
int main() {
int n;
cin >> n;
long long ans = 0;
/**
* 循环遍历从1到n的每个整数
*/
for (int i = 1; i <= n; i++) {
long long a = i, b = 0, c = 1;
/**
* 将整数a逆序重排到b中,同时计算c,c是10的幂
*/
while (a) {
b = b * 10 + a % 10;
a /= 10;
c *= 10;
}
/**
* 生成第i个偶位回文数字x
*/
long long x = i * c + b;
/**
* 将新的数字x累加到总和ans中
*/
ans += x;
}
/**
* 输出最终的总和ans
*/
cout << ans;
return 0;
}
题目
- 状态
- 已结束
- 题目
- 1
- 开始时间
- 2024-12-27 0:00
- 截止时间
- 2025-1-4 23:59
- 可延期
- 24 小时