vice_versa   3년 전

안녕하세요

문제를 풀다 궁금한 점이 생겨 글을 쓰게 되었습니다

두 번째 코드처럼 bs함수의 high의 초기값을 m과 t의 최대값의 곱인 10^18로 주면 틀리고

첫 번째 코드처럼 입력받은 수 중 최대t값 * m으로 주면 ac를 받습니다

high의 초기값을 10^18로 주는 코드로는 왜 통과할 수 없는지 여쭙고 싶습니다 

pmn0001   3년 전

unsigned long long t = (low + high) / 2;

에서 high가 ull 최대 범위이면 low와 더했을때 오버플로우 발생할거 같아요

vice_versa   3년 전

그렇군요 감사합니다!

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