题目
https://www.lintcode.com/problem/744
给一整数 k, 得出前 k 个偶数长度的回文数和. 这里的偶数长度是指一个数字的位数为偶数.
样例
样例1
输入: k = 3
输出: 66
解释:
11 + 22 + 33 = 66 (前三个偶数长度的回文数和)
样例2
输入: k = 10
输出: 1496
解释:
11 + 22 + 33 + 44 + 55 + 66 + 77 + 88 + 99 + 1001 = 1496
思路
枚举
答案
public class Solution {
/**
* @param k: Write your code here
* @return: the sum of first k even-length palindrome numbers
*/
public int sumKEven(int k) {
//枚举这个k个数的左半部,然后对称得到右半部,合成后求和即可
int sum =0;
for (int i = 0; i <=k ; i++) {
String num = i+"";
StringBuilder sb = new StringBuilder(num+"");
sb.reverse();
String rnum = sb.toString();
String cur = num+rnum;
int ret = Integer.parseInt(cur);
sum+=ret;
}
return sum;
}
}