kritias   3년 전

아래 소스코드는 맞았습니다 처리가 된 코드입니다.

그런데 36번째 줄의 if(cur.first + cur.second < goal + 1 ...)부분을 if(cur.first + cur.second < 1002 ...) 로 하면 1퍼센트밖에 못가 오답 처리가 됩니다.

제가 생각하기에는 goal이 1000이고 어떤 상태에서 이모티콘의 개수가 1001개라면 1개를 빼는 연산을 통해 정답으로 갈 수 있듯이, 

goal 초과의 값을 경유해야 하는 상황이 있을 것 같아서 1002를 goal + 1 대신에 넣었는데 그게 아니었나봅니다.

goal 초과의 값을 경유하지 않고 정답으로 가는 방법은 붙여넣기를 통해 바로 goal을 만드는 방법이고, 

이 상황이 언제나 최솟값이라면 이모티콘의 한계를 1002로 해두더라도 정답 처리가 되어야 하는데... 어떤 오류가 있는지 잘 모르겠습니다.

또한 goal + 1이 아닌 1002로 설정했을 때 영향을 미치는 부분은 현재 이모티콘 수를 goal보다 증가시키는 부분으로, 이로 인해서 

(시간 초과가 아닌 오답처리) 틀렸습니다.가 나온다면 분명 붙여넣기를 통해 goal 초과의 값을 만든 뒤에 정답으로 향하는 것이 그렇지 않은 경우보다 더 빠르다는 것을 의미합니다.

1002가 아닌 goal + 1로 바꿨을 때에는 아무런 오류없이 잘 실행되는 것으로 보아, 다른 부분에 문제는 없어보이는데.. goal 초과의 값을 경유하는 것이 어떤 문제가 있길래 오답처리가 되는 걸까요?

ghghgh777   3년 전

일단 올려주신 코드가 안 돌아갑니다.

그래서 22, 25번째 줄을 고치고 36번째 줄의 goal + 1을 1002로 수정하니 맞았습니다 가 나오네요. 다시 확인해보시기 바랍니다.

kritias   3년 전

감사합니다!

말씀대로 고쳤더니 잘 돌아가네요..

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