对于正整数n,如果存在正整数k使得n=1+2+3+···+k=k*(k+1)/2,则n称为三角数。例如,66066是一个三角数,因为66066=1+2+3+··+363。
如果一个整数从左到右读出所有数位上的数字,与从右到左读出所有数位上的数字是一样的,则称这个数为回文数。例如, 66066是一个回文数,8778也是一个回文数。
如果一个整数n既是三角数又是回文数,我们称它为三角回文数。例如66066是三角回文数。
请问,第一个大于20220514的三角回文数是多少?
public class Main {
public static void main(String[] args) {
for (int i = 4000; ; i++) {
String s = "" + i * (i + 1) / 2;
StringBuffer sb = new StringBuffer(s);
if (s.equals(sb.reverse().toString())) {
System.out.println(s);
//System.out.println(i);
break;
}
}
}
}
每天一道(#^.^#)!