TIL48. CodeKata:デジタルパリンドロン判別問題


🌈 ディジタルパリンドロン判別問題


🤔 マイソリューション


数値numをパラメータとして渡す場合は、反転した形状がnumと同じかどうかを返します.
num:数値
return:true or false(反転した形状がnumと同じかどうか)
たとえばnum=123が指定されている場合、falseのシェイプは321に戻ります.
✔"num=1212"を与えるとTrueを返します.ひっくり返す様子が1221なので.
✔に「num=10」をあげるとfalseにも戻ります.裏返した様子が01だったので.
def same_reverse(num):
    # 아래 코드를 입력해주세요.
    num = str(num)
    for i in range(len(num)//2):
      if num[i] != num[-1 - i]:   
        return False
    return True
num = -101
print(same_reverse(num))
✔隆問題では整数しか与えられていないので、負の整数の場合は無条件にfalseを返します.数値をstrに変換すると、一番前の-が最後に移動するので、反転した形状は常に一致しません.
АААААААААААААААААААА\

🤔 その他のソリューション

def same_reverse(num):
    # 아래 코드를 입력해주세요.
    if num < 0: return False
    if str(num)[::-1] == str(num):
      return True
    else: 
      return False
num = -101
print(same_reverse(num))
✔¥この問題は、ひっくり返して解くことができます!

🤔 感じる場所。


1.反転された元の形状が一致していることを確認するときは、for文ですべての要素を繰り返す必要はありません。


2.裏返しが必要なときは、ドアだけに執着しないでください。クリスタルシューズもかっこいい!