목록코딩 테스트 준비 (12)
개발 공부
요즘 언어를 이것저것 쓰다보니 stdio.h를 불러와서 string을 쓰려고 했다..... 이게뭐람 ㅋㅋㅋ 단순하게 그냥 #include using namespace std; int main() { string x; cin >> x; cout
이 문제는 그냥 풀려면 풀 수 있는데... #include int main() { int x,y; scanf("%d %d",&x,&y); int arr1[x][y]; int arr2[x][y]; int ans[x][y]; for(int i=0; i
우선 함수를 모를때! #include int main() { int x[5],num=0; for(int i=0; i
c++과 파이썬의 절댓값을 구현할 수 있는 내장함수 abs를 사용하면 된다! 우선 c++의 경우 math.h를 불러와서 abs를 사용했다 #include #include int main() { long x,y; long ans; scanf("%ld %ld",&x,&y); ans = x-y; printf("%ld",abs(ans)); } 범위가 -2,000,000,000~2,000,000,000이라서 x,y는 int형으로 되지만 연산값이 int형을 벗어나 long타입을 사용했습니다! 파이썬의 경우 a,b = map(int, input().split(" ")); ans = a-b; print(abs(ans)); 요런식으로 abs함수를 사용해 쉽게 구현 가능하다!
앞전의 글인 엄청난 부자2 와같이 c++로 하게되면 어려워지는 문제! 조건을 살펴보면 10진수로 1,000자리를 넘지 않으며 여기서 1000자리를 보고 그냥 1000을 넘지 않는다고 생각을 해서 왜 안될까 했는데 다시 살펴보니.... 자리수...? 1뒤로 0이 999개???? 역시 오버플로우... 최대로 들어올 수 있는수가 너무 크다.. c++에서 int형은 대략 -21억 ~ 21억까지 표현가능 => 최대 10자리수 까지 표현가능 파이썬에서는 자체적으로 Big integer를 지원해줘 따로 처리할 필요없이 짧게 A = int(input()) B = int(input()) print(A+B) print(A-B) print(A*B) 이렇게 구현가능...! 나같은 코딩애기는 자리수 나오면 파이썬으로....ㅠㅠ