数字の回文

数字の回文について

タグ


概要

  • 文字列の回文の様にリストにして評価しなくてももっと早く評価できる
  • 10のくらいづつシフトしながら取り出し、取り出した値を10倍することで、回文にしたときの数値を得られる

具体例

bool isPalindrome(int x) {
    int tmp = x;
    ll pal = 0;
    while(tmp > 0) {
        pal = pal*10 + tmp%10;
        tmp = tmp/10;
    }
    return x == pal;
}
  • 121であればtrue
  • 10であればfalse

参考