🤴 [문제]
정수 N, M 이 주어질 때, M의 이진수 표현의 마지막 N 비트가 모두 1로 켜져 있는지 아닌지를 판별하여 출력하라.
## M을 2로 나누었을 때, 나머지가 1이 나오면 비트가 ON되어 있다고 접근하였다.
## 만약 1이 아니라면 OFF
def isOn():
global N, M
for i in range(N):
# 만약 M값을 2로 나누었을 때 나머지가 1 이 아니라면
# 즉, 나머지가 0이라면
if not M % 2:
return False
# M값 초기화
M //= 2
# M값을 2로 나누었을 때 나머지가 1 이라면
else:
return True
T = int(input())
for tc in range(1, T+1):
N, M = map(int, input().split())
# 만약 isOn에서 True값이 리턴되면 ON
# False값이 리턴되면 OFF
result = 'ON' if isOn() else 'OFF'
print('#{} {}'.format(tc, result))
'# 3. APS' 카테고리의 다른 글
[2021.02.08] #3. 파이참 파일생성 및 input 자동화 (shell script) (0) | 2021.02.11 |
---|---|
[2021.02.08] #2. 알고리즘 코드 공유하기 좋은 사이트, slack (0) | 2021.02.11 |
[2021.02.08] #1. SWEA로 알고리즘 공부 시작! 환경설정 하기 (0) | 2021.02.11 |