10726. 이진수 표현
문제)
정수 N, M 이 주어질 때, M의 이진수 표현의 마지막 N 비트가 모두 1로 켜져 있는지 아닌지를 판별하여 출력하라.
[입력]
첫 번째 줄에 테스트 케이스의 수 TC가 주어진다.
이후 TC개의 테스트 케이스가 새 줄로 구분되어 주어진다.
각 테스트 케이스는 다음과 같이 구성되었다.
첫 번째 줄에 정수 N, M이 주어진다. (1 ≤ N ≤ 30 , 0 ≤ M ≤ 108)
[출력]
각 테스트 케이스마다 한 줄씩
마지막 N개의 비트가 모두 켜져 있다면 ON
아니면 OFF 를 출력하라.
풀이)
1
2
3
4
5
6
7
8
9
10
11
|
T = int(input())
for _ in range(T):
n, m = map(int, input().split())
answer = ""
while len(answer) != n:
answer = str(m % 2) + answer
m //= 2
answer = answer.zfill(n)
print(f"#{_ + 1}","ON" if answer[-n:] == "1" * n else "OFF")
|
cs |
문제 출처 : https://swexpertacademy.com/main/main.do
SW Expert Academy
SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!
swexpertacademy.com
※ SW Expert 아카데미는 원칙적으로 문제를 무단 복제하는 것을 금지합니다.
학습용으로 문제를 가져왔으나, 문제가 될 시 수정 및 삭제하겠습니다.
'Develop > Python + SWEA' 카테고리의 다른 글
[SW Expert Academy] 4615. 오셀로 게임 (0) | 2022.03.25 |
---|---|
[SW Expert Academy] 4366. 정식이의 은행업무 (0) | 2022.03.25 |
[SW Expert Academy] 5186. 이진수2 (0) | 2022.03.24 |
[SW Expert Academy] 5185. 이진수 (0) | 2022.03.24 |
[SW Expert Academy] 1240. 단순 2진 암호코드 (0) | 2022.03.23 |