16396번 - 선 그리기
전 완벽한 코드라고 생각하는데 왜 틀렸다고 하나요?;;
arr[] 선언시 초기화를 안했으니 쓰레기값이 들어가는데 우연히 1이 들어가면 어떻게 될까요
초기화도 그렇지만, 이 코드로는 통과 못 할겁니다.
일단 색칠하기 알고리즘이 기본인데, 불필요한 코드가 너무 많습니다.
단순하게 생각한다면,
while(n--) {
cin >> x >> y;
for( i = x; i < y; i++) arr[i]=1;
}
만 해도 되죠.
그렇지만, 이 경우 최악의 케이스에서 입력 10,000개에, 10,000번의 for 루프를 돕니다.
그러면 100,000,000번의 arr[i]=1 이란 코드가 실행되어서 시간초과 날 것 같은데요. (짐작이지만요.)
댓글을 작성하려면 로그인해야 합니다.
zz132456zz 4년 전
전 완벽한 코드라고 생각하는데 왜 틀렸다고 하나요?;;