题目

输入一个非负整数,将其转换为二进制字符串形式并输出(不使用额外前缀)。

输入格式:输入一行包含一个非负整数 n。

输出格式:输出转换后的二进制字符串,末尾换行。

数据范围与约定:0 ≤ n ≤ 10^9。

思路与算法

1. 除 2 取余逆序
不断取 n % 2 并整除 n //= 2,收集各位后逆序输出。注意 n = 0 时特判输出 0。

2. bin 函数
内置函数 bin(n)[2:] 同样可以直接获得不带 0b 前缀的二进制串。

完整程序

n = int(input())

# 十进制转二进制字符串
if n == 0:
    print(0)
else:
    bits = []
    while n > 0:
        bits.append(str(n % 2))
        n //= 2
    # 逆序拼接
    print("".join(reversed(bits)))

运行示例

输入:

13

输出:

1101