結果

問題 No.2397 ω冪
ユーザー gew1fw
提出日時 2025-06-12 14:28:42
言語 PyPy3
(7.3.15)
結果
WA  
実行時間 -
コード長 1,412 bytes
コンパイル時間 403 ms
コンパイル使用メモリ 82,288 KB
実行使用メモリ 284,616 KB
最終ジャッジ日時 2025-06-12 14:28:48
合計ジャッジ時間 6,188 ms
ジャッジサーバーID
(参考情報)
judge4 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 31 WA * 5 TLE * 1 -- * 4
権限があれば一括ダウンロードができます

ソースコード

diff #

def get_b_list_reversed(bin_str):
    b_list = []
    s = bin_str.lstrip('0') or '0'  # Handle leading zeros
    while s != '0':
        # Count trailing zeros by reversing the string
        reversed_s = s[::-1]
        b = 0
        while b < len(reversed_s) and reversed_s[b] == '0':
            b += 1
        b_list.append(b)
        # Remove the trailing b zeros
        if b >= len(reversed_s):
            s = '0'
        else:
            s = reversed_s[b:][::-1].lstrip('0') or '0'
            # Subtract 1 from s
            if s == '0':
                s = '0'
            else:
                s_list = list(s)
                i = len(s_list) - 1
                while i >= 0 and s_list[i] == '0':
                    s_list[i] = '1'
                    i -= 1
                if i >= 0:
                    s_list[i] = '0'
                else:
                    s_list = ['1'] + s_list
                # Remove leading zeros after subtraction
                new_s = ''.join(s_list).lstrip('0') or '0'
                # Divide by 2 (right shift)
                s = new_s[:-1] if len(new_s) > 1 else '0'
    return b_list[::-1]  # Reverse to get the correct order

n_bin = input().strip() or '0'
m_bin = input().strip() or '0'

n_b_list = get_b_list_reversed(n_bin)
m_b_list = get_b_list_reversed(m_bin)

# Compare lexicographically
if n_b_list < m_b_list:
    print("Yes")
else:
    print("No")
0