진수
- 10잔수 외의 다른 진수는
접두어
가 붙는다. - 2진수 : 0b
- 8진수 : 0o
- 16진수 : 0x
내장함수
1
2
3
4
5
val = 13
print(bin(val))
print(oct(val))
print(hex(val))
1
2
3
0b1101
0o15
0xd
foramt 내장함수
#
의 유무에 따라 접두어의 유무가 결정된다.
1
2
3
4
5
6
7
8
9
b = format(val, '#b')
o = format(val, '#o')
h = format(val, '#x')
print(b, o, h)
b = format(val, 'b')
o = format(val, 'o')
h = format(val, 'x')
print(b, o, h)
1
2
0b1101 0o15 0xd
1101 15 d
백준 3460번 이진수
1
2
3
4
5
6
7
8
9
T = int(input())
num_list = []
for _ in range(T):
b = format(int(input()), 'b')[::-1]
num_list += [idx for idx, num in enumerate(b) if int(num) == 1]
for i in range(len(num_list)):
print(num_list[i], end=' ')
1
2
3
4
5
6
7
8
5
13
25
39
50
100
0 2 3 0 3 4 0 1 2 5 1 4 5 2 5 6