영호와 자바 > 문제은행

본문 바로가기


실전대비 Level2

1176 : 영호와 자바

제한시간: 1000 ms    메모리제한: 64 MB
해결횟수: 119 회    시도횟수: 462 회   



영호는 최근에 학교 프로그래밍 동아리에 들어가게 되었고, 어떤 프로그래밍 언어를 사용할 것인지 고민하게 되었다.

 

영호는 오랜 고민 끝에 Java 를 사용하는 것이 좋을 것이라고 생각하게 되었다. 영호가 Java를 선택하게 된 가장 큰 이유는 BigInteger 라는 매우 큰 정수를 저장할 수 있는 자료형을 가지고 있기 때문이었다. 하지만 몇 번의 동아리 스터디를 참가하고 나서, 프로그래밍을 할 때 반드시 BigInteger 가 필요한 것이 아니라는 것을 알게 되었다. 다시 말해서 더 작은 범위의 숫자를 저장하는 자료형을 이용해서 숫자를 저장할 경우 문제를 더 쉽게 해결할 수 있다는 것이다.

 

따라서 영호는 다음과 같은 의문을 갖게 되었다. "임의의 정수 n를 변수에 저장할 때 어떤 자료형 변수를 사용하는 것이 좋을까?"

 

영호는 다음과 같이 5가지의 정수를 저장하는 자료형을 알고 있다.

 

byte 는 1바이트를 사용하여 -128 이상 127 이하의 정수를 저장할 수 있다.
short 은 2바이트를 사용하며 -32,768 이상 32,767 이하의 정수를 저장할 수 있다.
int 는 4바이트를 사용하며 -2,147,483,648 이상 2,147,483,647 이하의 정수를 저장할 수 있다.
long 은 8바이트를 사용하며 -9,223,372,036,854,775,808 이상 9,223,372,036,854,775,807 이하의 정수를 저장할 수 있다.
BigInteger 는 어떠한 정수던지 저장할 수 있으나, 이는 기본형이 아니기 때문에 연산과 저장에 있어 다른 형 보다 느린 속도를 보이며, 차지하는 저장공간 역시 다른 정수를 저장하는 자료형 보다 많이 차지한다.

 

 

임의의 정수 n이 주어졌을 때 이를 저장할 수 있는 가장 작은 자료형을 찾는 프로그램을 작성하라.


입력은 한 줄로 이뤄지며 100 자리 이하의 양의 정수가 주어진다. 
정수의 앞자리에는 0이 올 수 없으며, 빈 문자열로 입력이 들어오는 경우는 존재하지 않는다.


입력에 대해서 이를 저장할 수 있는 가장 작은 크기의 자료형의 이름을 출력하라. 
만약 byte로 저장을 할 수 있을 경우 'byte'를, short의 경우에는 'short'을, int의 경우에는 'int'를, long의 경우에는 'long'을 출력해야 하며, 이외의 경우에는 'BigInteger'를 출력한다.

[Copy]
127
[Copy]
byte


[Copy]
130
[Copy]
short


[Copy]
123456789101112131415161718192021222324
[Copy]
BigInteger





Codeforces 66A Petya and Java

HancomEducation E-mail : hancomc@hotmail.com, comkiwer@naver.com Tel : 070-7163-5782 FAX : 031-388-0996 정올소개 이용약관 개인정보처리방침
경기도 안양시 동안구 호계동 1065-10 협성골드프라자 601호, 경기도 안양시 동안구 평촌대로 109 협성골드프라자 601호
Copyright@2010-2015 jungol. All right reserved.