smu04129   3년 전

벽아닌곳 좌표 따로 저장, 벽좌표 따로저장 후

벽아닌곳에 좌표의 그룹 번호와 (10번 부터시작) 넓이를 저장한 벡터 group이고

아래는 벽좌표 에서 상하좌우에 붙어있는 그룹번호에 대한 넓이를 카운트 해서 마지막에 % 10 하여 저장 하였습니다.

예제랑 게시판 반례도 맞던데 아예 1프로 조차도 안오르고 바로 틀렸다고 나오네요.. 제발 부탁 드립니다.. 한번만 도움을 주세요..

pichulia   3년 전

group 배열의 크기가 너무 작습니다.

왜냐하면 MAX 가 매크로이기 때문에

MAX * MAX 는 1000 + 1 * 1000 + 1 이고,

따라서 MAX * MAX 는 2001이 되기 때문입니다.

#define MAX 1001

또는

#define MAX (1000 + 1)

또는

const int MAX = 1000 + 1;

로 수정해보세요

smu04129   3년 전

매크로 곱하기를 하면 그렇게 처리된다는 사실을 오늘 처음알았네요..

정말 감사합니다.. 전에도 제질문에 친절히 답변해주신분 같은데..

감사드려요..

아직도 배울것이 많네요

다시한번 감사드립니다.

smu04129   3년 전

다시보니 1000 + 1 * 1000 + 1 이라 매크로라 그렇게 곱셈결과가 나온것이아니라

그냥 곱셉먼저 계산되어 그렇게 나온거였군요 MAX를 그냐ㅑ1001이라 저장했으면 제대로 나왔을건데..

ㅋㅋ 바보 같네요 저가..

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