lusiuce   5년 전

10만 넣어도 잘 실행 됩니다.. 런타임에러가 왜 뜨는걸까요...?

djm03178   5년 전

\r\n 말고 그냥 \n을 출력하세요.

djm03178   5년 전

그리고 0을 리턴해야 합니다. 최근에 0이 아닌 수를 프로그램이 리턴하면 런타임 에러를 받게 바뀌었습니다.

kimsy96   5년 전

@

djm03178 


저렇게 식을 쓰면 문자열 스트링에 입력값이 전부저장되는구조아닌가요? 

djm03178   5년 전

상관 없습니다. 저 코드에서 \n으로 바꾸고 0을 리턴하게만 하면 정답을 받습니다. https://www.acmicpc.net/source...

string은 뒤에 덧붙이려고 하면 자동으로 크기가 늘어나는 클래스입니다. vector의 push_back과 같다고 보시면 됩니다. 10만부터 1까지 모조리 출력하더라도 588895바이트밖에 안 되니 메모리 초과의 문제도 없습니다.

kimsy96   5년 전

아 return 1때문이었네요 

lusiuce   5년 전

는문제마다 다 런타임에러뜨길래 뭔지 봤더니... return 1을 하면 안되네요...... return 0을 해야 됩니다 ㅠㅠ

한칸 띄우는 부분은 위로 옮겼고 출력부분은 혹시 출력이 속도를 잡아먹을까 string에 넣고 한번만 출력했습니다.



djm03178   5년 전

종료를 제대로 했는데도 런타임 에러로 판정하는 것이 어떻게 보면 좀 억울하지만, 정상 종료시 0을 리턴한다는 건 프로그래밍계의 암묵적인 규칙이라는 걸 생각해본다면 합리적입니다. BOJ에서 좋은 프로그래밍 습관을 연습시켜주는 겁니다.

djm03178   5년 전

C++의 경우 main 함수에만 예외적으로 아무 리턴을 쓰지 않으면 자동으로 0을 반환해주니, 귀찮다면 return문을 아예 안 넣는 것도 하나의 방법입니다.

lusiuce   5년 전

C#을 주로 사용하다보니 저도 모르게 return 1을 하고있네요;; 처음 시작할땐 return 0이 당연했을 텐데.... 좋은지적 감사합니다.

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