本文介绍了如果给一个15位数字最新最好的方式找到下一个回文?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
在C ++中这将是最快的逻辑来找到一个给定的15位数字回文旁边?例如,这将是下一个回文:134567329807541
in c++ what will be the fastest logic to find next palindrome of a given 15 digit number? for example what will be the next palindrome of: 134567329807541 ?
推荐答案
-
分割数为三个部分,
头
,中期
,尾
1345673 2 9807541
1345673 2 9807541
逆向头
,并将其与尾
3765431
Reverse head
and compare it to tail
3765431
如果反向(头)LT =尾部
(如果他们是平等的初始输入是一个回文,并且希望下一个)
If reverse(head) <= tail
( if they are equal the initial input is a palindrome, and you want the next )
- 如果
中期&LT; 9
,年年递增 - 否则增量
头
部分,并设置中期:= 0
- If
mid < 9
, increment mid - Else increment
head
part and setmid := 0
结果:= 头反向中期(头)
1345673 3反向(1345673)=> 134567333765431
1345673 3 reverse(1345673) => 134567333765431
这篇关于如果给一个15位数字最新最好的方式找到下一个回文?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!