DIAMONDPATH 문제 컴파일러에서 이상없는데 제출하면 런타임에러 나네요 icbm 비쥬얼스튜디오 2013 릴리즈 모드로 작성해서 실행하면 에러 없이 결과 값 잘 나오는데 여기에 답안 제출을 하면 런타임 에러가 나오네요 에러 내용은 세그먼테이션 펄트 이거나 스택오버플로우 라고 하는데 컴파일러에서 잘 작동하는데 왜 여기에 제출하면 에러가 나는지 잘모르겠습니다. 아시는 분있으면 알려주세요!~ #include<stdio.h> #pragma warning(disable:4996) int N, arr[100][100], output[100][100]; int main(){ int i, j, C, k; scanf("%d", &C); for (k = 0; k < C; k++){ scanf("%d", &N); for (i = 0; i < N; i++){ for (j = 0; j <= i; j++){ scanf("%d", &arr[i][j]); } } for (i = N; i < 2 * N - 1; i++){ for (j = 0; j < 2 * N - 1 - i; j++){ scanf("%d", &arr[i][j]); } } output[0][0] = arr[0][0]; for (i = 1; i < N; i++){ for (j = 0; j <= i; j++){ if (j == 0) output[i][j] = output[i - 1][j] + arr[i][j]; else if (i == j) output[i][j] = output[i - 1][j - 1] + arr[i][j]; else if (j>0 && i != j){ if (output[i - 1][j] + arr[i][j] > output[i - 1][j - 1] + arr[i][j]) output[i][j] = output[i - 1][j] + arr[i][j]; else output[i][j] = output[i - 1][j - 1] + arr[i][j]; } } } for (i = N; i < 2 * N - 1; i++){ for (j = 0; j < 2 * N - 1 - i; j++){ if (output[i - 1][j] + arr[i][j] > output[i - 1][j + 1] + arr[i][j]) output[i][j] = output[i - 1][j] + arr[i][j]; else output[i][j] = output[i - 1][j + 1] + arr[i][j]; } } printf("%d\n", output[2 * N - 2][0]); } return 0; } 9년 전
6개의 댓글이 있습니다. Being http://stackoverflow.com/questions/9471837/what-is-the-difference-between-run-time-error-and-compiler-error 9년 전 link icbm 제 코드를 직접 보여드리고 싶은데 코드를 여기에 올려도 될까요? 동적계획법 으로 풀었고 코드도 짧아서 보기 편하실거라 생각합니다. 그리고 감사합니다. 런타임에러가 실행중에 나는에러고 컴파일 때는 나타나지 않는다는 점은 이해 했습니다. 9년 전 link Being 네, 다른 글과질문 시 나타나는 주의사항을 참고하여 올려 주시기 바랍니다. 9년 전 link icbm 코드 올렸습니다. 9년 전 link JongMan 배열 크기가 너무 작네요. NxN 보다 큰 배열이 필요합니다. 9년 전 link icbm 감사합니다! 9년 전 link 정회원 권한이 있어야 커멘트를 다실 수 있습니다. 정회원이 되시려면 온라인 저지에서 5문제 이상을 푸시고, 가입 후 7일 이상이 지나셔야 합니다. 현재 문제를 푸셨습니다.
icbm
비쥬얼스튜디오 2013 릴리즈 모드로 작성해서 실행하면
에러 없이 결과 값 잘 나오는데 여기에 답안 제출을 하면 런타임 에러가
나오네요 에러 내용은 세그먼테이션 펄트 이거나 스택오버플로우 라고 하는데
컴파일러에서 잘 작동하는데 왜 여기에 제출하면 에러가 나는지 잘모르겠습니다.
아시는 분있으면 알려주세요!~
9년 전