문제
오늘은 혜아의 면접 날이다. 면접 준비를 열심히 해서 앞선 질문들을 잘 대답한 혜아는 이제 마지막으로 칠판에 직접 코딩하는 문제를 받았다. 혜아가 받은 문제는 두 수를 더하는 문제였다. C++ 책을 열심히 읽었던 혜아는 간단히 두 수를 더하는 코드를 칠판에 적었다. 코드를 본 면접관은 다음 질문을 했다. “만약, 입출력이 바이트 크기의 정수라면 프로그램을 어떻게 구현해야 할까요?”
혜아는 책에 있는 정수 자료형과 관련된 내용을 기억해 냈다. 책에는 long int는 바이트 정수까지 저장할 수 있는 정수 자료형이고 long long int는 바이트 정수까지 저장할 수 있는 정수 자료형이라고 적혀 있었다. 혜아는 이런 생각이 들었다. “int 앞에 long을 하나씩 더 붙일 때마다 바이트씩 저장할 수 있는 공간이 늘어나는 걸까? 분명 long long long int는 바이트, long long long long int는 바이트까지 저장할 수 있는 정수 자료형일 거야!” 그렇게 혜아는 당황하는 면접관의 얼굴을 뒤로한 채 칠판에 정수 자료형을 써 내려가기 시작했다.
혜아가 바이트 정수까지 저장할 수 있다고 생각해서 칠판에 쓴 정수 자료형의 이름은 무엇일까?
입력
첫 번째 줄에는 문제의 정수 이 주어진다. (4 ≤ N ≤ 1000 은 의 배수)
출력
혜아가 바이트 정수까지 저장할 수 있다고 생각하는 정수 자료형의 이름을 출력하여라.
# sol.1 (4oms)
n = int(input())
print("long "*(n//4) + "int")
# 또는
print(int(input())//4*'long ' + 'int')
내가 처음에 했던 건 이 방법
하지만 띄어쓰기를 제대로 안했더니 틀렸다.
print() 할 때 +는 자동 띄어쓰기가 된다는 거 기억하기
# sol.2 (44ms)
n = int(input())
for i in range(n//4):
print("long", end=" ")
print("int")
이거는 서칭하다 찾은 방법이다.
반복문을 이용하는 방법으로 이것도 알아두면 좋을거 같다.
end=" "는 반복할 문장 뒤에 공백을 붙인다는 뜻
'Algorithm > 백준' 카테고리의 다른 글
[파이썬/백준2577] 숫자의 개수 (0) | 2023.03.05 |
---|---|
[파이썬/백준2675] 문자열 반복 - for문 안의 for문, len(문자열) (0) | 2023.03.05 |
[파이썬/백준1546] 평균 - list.append() (0) | 2023.03.04 |
[파이썬/백준2742] 기찍 N (0) | 2023.03.04 |
[파이썬/백준 14681] 사분면 고르기 (0) | 2023.03.03 |