- 时间复杂度:$O(logn)$
long long nextPalindrome(long long num)
{
string s=to_string(num);
int n=s.size();
for(int i=n/2;~i;i--)
if(s[i]!='9')
{
s[i]++;
if(n-i-1!=i)s[n-i-1]++;
for(int j=i+1;j<=n/2;j++)
{
s[j]='0';
s[n-j-1]='0';
}
return stoll(s);
}
long long res=1;
for(int i=0;i<n;i++)res*=10;
res++;
return res;
}