[백준]2753_윤달(Python)

차보경·2022년 10월 11일
0

백준

목록 보기
8/20
post-thumbnail

문제

로직 정리

  • year 입력
  • 조건 2가지(4의배수&100의배수가아님, 400의 배수)에 해당할 경우 "1"출력
  • 아니면 "0"출력

알아야 할 것

  • 배수일 경우 해당 숫자로 나눴을 때 나머지가 0이다. (year % 4 == 0)

작성 코드

year = int(input())

print("1" if ((year%4 == 0 and year%100 != 0) or (year % 400 == 0)) else  "0" )
  • 메모리 : 30840KB, 시간 68ms, 코드길이 : 101B

복기

  • 나름 수월하게 끝남

다른사람 코드 1(숏코딩)

n=int(input())
print(+(n&-n>3|8>>n%50))
  • 메모리 : 230840KB, 시간 : 72ms, 코드길이 : 39B
  • ???? 이게 뭐죠..?? 와우....
  • >>은 시프트 연산자라고 하네요. 정해진 비트수만큼 옆으로 이동시켜주는 역할이라고하는데, 2진수로 바꿔서 앞 or 뒤로 0을 넣어주는 연산자입니다. 이걸 여기ㅇㅔ..? (설명 : https://deepflowest.tistory.com/49)
    역시 알다가도 모를 파이썬의 세계.
  • 그리고 여기서 0, 1이 없는데 어떻게 출력이 되는지 모르겠다..
profile
차보의 Data Engineer 도전기♥ (근데 기록을 곁들인)

0개의 댓글