4whomtbts   6년 전

안녕하세요, 문제를 풀고 점화식 세우고 테스트케이스를 넣어봤는데, 답이 아무래도 계속 잘못 나와서 다른 블로그들 참고해봤는데

제가 작성한 코드랑 완전히 똑같이 작성했는데.. 그 당시에는 답이 맞았던것 같습니다.. 아무리 비교해봐도 도저히 모르겠습니다 ㅜㅜ

input 4 에 output 41 인데, 저는 input 4 output 86만 나옵니다..

jh05013   6년 전

맞은 사람이 2000명이나 되고, 채점 현황을 보면 "맞았습니다"가 지금도 많이 있으며, 41이 나와야 됩니다. 완전히 똑같다는 건 1줄부터 35줄까지 단 한 글자도 다르지 않다는 뜻인가요?

잘못된 부분은 main 밖에 있습니다.

4whomtbts   6년 전


@jh05013 

배열 시작위치, 종료조건, 나누는 값 등등 모두 같았고, 그래도 안 나와서 맞았다는 코드를 그대로 컴파일 했는데도 오류가 떴습니다.


jh05013   6년 전

다시, 잘못된 부분은 main 밖에 있습니다. 10, 11줄을 잘 보세요.

BOJ의 컴파일러 설정이 시간이 지나면서 바뀔 수 있기 때문에 예전에 되는 코드가 지금은 컴파일 에러가 날 수는 있습니다만, 이런 문제에서 그 정도의 코드가 나올지는 의문입니다. 어떤 링크를 참고하셨나요?


4whomtbts   6년 전


jh05013

아래 링크 두개입니다.

 

http://dyndy.tistory.com/206

http://donggod.tistory.com/31

4whomtbts   6년 전

혹시 배열크기 문제인가 해서 인덱스도 더 넓게주고, 자료형 자체는 어차피 dp 배열을 초기화할때마다 %9901 로 해주기 때문에 자료형크기 문제는 아니고..

의문입니다 ㅜㅜ

jh05013   6년 전

링크하신 두 코드 모두 제출해 보았는데 잘 돌아갑니다.

cage[100001][2]

4whomtbts   6년 전

배열 인덱스가 문제였네요

int dp[100001][2] => int dp[100001][4]  로 바꾸니깐 돌아갑니다ㅡㅡ..

 int dp[100001][3] 
 int dp[100001][4] 
는 접근하는 경우가 없는데, 어째서 오류인지 의문이네용..

jh05013   6년 전

[100000]에 접근하면 [100001] 이상을 만들어야 합니다. 마찬가지로 [x][2]에 접근하면 [x][3] 이상을 만들어야 합니다.

4whomtbts   6년 전

헐?? 새로운걸 알게됬네요...; 감사합니다ㅜㅜ

4whomtbts   6년 전

실례지만 2700문제 푸시는데 얼마나 걸리셨나요 ? 랭커분들 존경스럽네요 ㄷㄷ..

4whomtbts   6년 전

그런데, 평소에는 [x][2] 에 접근하더라도 [x][3] 까지 만들지 않아도 됬던 경우가 많은데(제 경험이 짧아서 그런것이겠지만..) 혹시, 임계가 되는 값이 있나요??

왜 이번에만 이런 일이 생겼는지 의문스럽습니다

jh05013   6년 전

범위 밖에 있는 위치에는 무슨 값이 들어갈 지 알 수 없습니다. 통과된다면 운이 좋거나, 사실은 어떤 값이 들어 있어도 상관 없거나 등의 이유가 있겠지만 적어도 항상 맞게 돌아간다는 보장은 할 수 없습니다.

얼마나 걸렸는가는 사실 조금 애매합니다. BOJ 가입은 2년 전에 했지만 그 전부터 알고리즘 문제를 조금 풀긴 했기 때문에...

4whomtbts   6년 전

아아 그렇군요 좋은거 배웠습니다 ㅎㅎ 감사합니다 좋은 저녁되셔요(__)

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