luluctrl4   8년 전

C++에서 채첨할 때, long long int abs(long long int) 가 없나요?

문제 풀다가 맞는거 같은데 자꾸 틀려서

어디선가 들은 이야기 있어서 코드 그대로 자바로 옮겨서 문법만 고쳐서 제출했더니


맞췄어요

?? 어? 머지?


다시 생각해보면서 옮기는 과정에서 abs 함수가 없길래 그것만 새로 짰는데 

원래 C++ 에서 할때 얘가 이미 선언되어있다면서 빌드애러가 뜨길래

있구나 하면서 넘어갓는데 그게 문제인가 싶어서

아주 긴 수를 입력 받고 긴 수를 뱉어봣는데 제대로 출력되더라구요


abs는 중복뜨니까 AABBSS 라는거 만들어서 abs랑 똑같이 작동하는 함수를 짠 다음

abs 호출하는 부분은 전부다 AABBSS로 치환해서 다시 제출해봣는데

답은 맞네요 (시간 턱걸이 해서 다시 짜야할것 같지만)


그래서 서버에

long long int abs(long long int) 함수가 존재하는지 알고 싶습니다.

(없다면 int로 자동변환시켯을거 같아서)

(있다면 위와 같은 상황이 왜 일어낫는건지)


luluctrl4   8년 전

윈도우의 VS2013 의 algorithm 에  abs가 있는데

채첨사이트의(gcc 인가) algorithm 엔 없나봐요

ㅁㄴㅇㄹ(1000번 문제 상대로 테스트 해봄)

handrake   8년 전

https://github.com/Baekjoon/Dockerfiles 여기 보시면 서버 c++ 버전 있어요.

cseteram   8년 전

abs는 stdlib.h에 있지 않나요.

VS에서는 자동으로 잡아주기도 해서... 

아래는 1000번에 제출해 본 코드입니다.

ntopia   8년 전

long long 버전의 abs는 c++11 부터 표준입니다

그전의 버전에선 컴파일러마다 지원 상황이 다르고요

c++11 로 하면 cstdlib 를 include 하시면 됩니다

(부동소수점 버전의 abs는 cmath)

댓글을 작성하려면 로그인해야 합니다.