Home 진수 변환법
Post
Cancel

진수 변환법

진수

  • 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 
This post is licensed under CC BY 4.0 by the author.