1744번 - 수 묶기
43번째 줄의 idx += 2 를 idx *=2 로 바꾸었는데 정답으로 처리가 됬습니다.
그런데 배열이 있다고 할때
idx += 2 를 해도 idx *=2 와 같은 접근을 하게되지 않나요 ?
예외 케이스가 어디서 발생하나요 ?
무슨 말씀이신지 모르겠습니다. 이 코드 그대로 내도 맞고, 43번째 줄의 주석을 풀어서 내도 맞고, 그 부분을 idx *= 2;로 고쳐서 내도 맞습니다.
애초에 거기서 idx 값을 아무 걸로 바꿔도 다음 루프에서 idx = i*2;로 바로 덮어씌워지기 때문에 전혀 상관이 없습니다.
idx = i*2는 전부 제거하고
주석을 푼다음 진행한다는 것 같네요
그렇게 봐도 질문이 이상합니다. 오히려 idx += 2; 쪽이 정답을 받고 idx *= 2; 쪽이 틀립니다.
그리고 그건 당연한 것이, idx += 2;는 idx가 0, 2, 4, 6, 8, 10, ... 과 같이 진행하지만, idx *= 2;는 idx가 계속 0으로 남아있게 됩니다.
여러분 제 실수로 혼란을 드렸네요.
idx += 2 에서 틀렸습니다가 나왔던이유는 제가 출력처리를 실수해서였습니다.
idx *= 2 , idx +=2 의 문제가 아니였군요 !
감사합니다 다들.
행복하세요
댓글을 작성하려면 로그인해야 합니다.
newhar 4년 전
43번째 줄의 idx += 2 를 idx *=2 로 바꾸었는데 정답으로 처리가 됬습니다.
그런데 배열이 있다고 할때
idx += 2 를 해도 idx *=2 와 같은 접근을 하게되지 않나요 ?
예외 케이스가 어디서 발생하나요 ?