[백준 10869] 사칙연산 문제-변수 선언에서 질문 있습니다!! #4
-
1주차 과제로 올려주신 백준 문제를 풀다가 궁금한 사항이 생겨서 질문 남깁니다!
======================================= 입력 출력 ======================================= [이렇게 문제를 푼 이유] 일단 int는 10,000이하의 수를 표현할 수 있습니다. (int : 4byte => 약 -21억~21억 표현 가능) 하지만 unsigned int를 사용했을 때에는 틀렸고, int를 사용했을 때에는 정답으로 표시되었습니다....이게 무엇이 문제일까요... [코드 변경 시도] |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 2 replies
-
문제 조건을 보시면, B가 A보다 더 클 수 있습니다. 따라서 unsigned 조건을 쓰면 안된다는 사실을 알 수 있네요. Ex) A:999 , B:1000 웬만하면 int 쓰시고 범위가 넘어갈것같으면 long long 타입 쓰세요 264까지 가능 |
Beta Was this translation helpful? Give feedback.
문제 조건을 보시면, B가 A보다 더 클 수 있습니다. 따라서 unsigned 조건을 쓰면 안된다는 사실을 알 수 있네요. Ex) A:999 , B:1000
정답: A-B = -1 short unsigned는 왜 통과되는지 모르겠습니다.. ㅋㅋㅋㅋㅋ 안되는게 맞긴한데 질문이 굉장히 예리하신것같아요.
웬만하면 int 쓰시고 범위가 넘어갈것같으면 long long 타입 쓰세요 264까지 가능