shdmftksid   5년 전

Visual 에서는 잘 돌아가는데... Testcase 손 계산과 병행해봐도 문제점을 모르겠습니다.

문제가 뭔지 알려주실 수 있을까요?

k5nen   5년 전

A와 B의 범위는 1 이상 10^16 이하입니다. 여기서 두 가지 문제가 발생합니다.

  1. int의 최댓값은 2147483647로 10^16보다 훨씬 작습니다. 따라서 a와 b에는 잘못된 값이 저장될 수 있습니다.
  2. A부터 B까지의 모든 수를 이진수로 변환하며 1의 개수를 세면 시간 초과를 받습니다. 근본적으로 더 빠른 알고리즘을 생각해 주세요.

댓글을 작성하려면 로그인해야 합니다.