yohan5050   7달 전

문제 입력 설명에 입력하는 랜선의 길이는 (2의 31제곱 -1)로 나와있어서 int형 변수로

입력 값을 받았는데 틀렸습니다. 그래서 혹시 필요한 랜선 개수를 구하는 데서 int 범위를 초과할까봐

랜선 개수를 구하는 부분을 long long으로 바꿔줬는데, 그래도 틀렸다고 나와서

입력까지 다 long long으로 바꾸니까 맞게되었습니다.

왜 입력 값에 까지 long  long을 써야하는지 궁금합니다...

처음 시작할 때 min이 0, max가 2^31 -1 정도라고 치면

min = (0 + 231-1) / 2 + 1

max = 231-1 이 되어서 min + max 값이 int범위를 초과할 수 있습니다.

yohan5050   7달 전

와 ...그렇군요! 명쾌한 답변 감사합니다! 

저는 생각도 못하고 있었네요 ㅠ 정말 감사합니다!

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