(몸풀기) 백준 11382

01tilinfinity·2023년 3월 8일
0

아무래도 학부 수업을 듣다보면 이론 위주고 실습도 코딩 실력을 향상시키기 위한 목적의 실습들은 아니라, 코딩 실력이 늘 기회가 없었는데 여기에 나의 게으름이 더해져 그나마 하던 파이썬과 C 문법을 모조리 잊어버리게 되었다.. 다시 몸풀기를 통해 복구해보고자 한다.

11382 - python
보자마자 for문 쓸 생각을 했는데, map을 이럴 때 쓰면 될 것 같아서 썼고 역시나 대부분이 이렇게 푼 듯

x,y,z=map(int,input().split())
print(x+y+z)

끝이다..

11382 - C99

#include<stdio.h>
int main(){
int x,y,z;
scanf("%d %d %d",&x,&y,&z);
printf("%d",x+y+z);

return 0;

}
이게 자꾸 틀리게 나오길래 왜지 하고 생각해봤는데 입력값의 범위가 최대 <10^12다.
그러므로 자료형을 int가 아닌 double이나,long long으로 잡아주어야 함

double은 출력 형식 조절해주기 번거로우니 그냥 long long(int)로 출력해보자

자료형별 차이점은 표현 가능 범위가 다르다는 것
함정을 여기서 파셨군

#include<stdio.h>
int main(){
long long x,y,z;
scanf("%lld %lld %lld",&x,&y,&z);
printf("%lld",x+y+z);

return 0;

}

profile
나를 죽이지 못하는 고통은 나를 더 강하게 만든다

0개의 댓글