16946번 - 벽 부수고 이동하기 4
벽아닌곳 좌표 따로 저장, 벽좌표 따로저장 후
벽아닌곳에 좌표의 그룹 번호와 (10번 부터시작) 넓이를 저장한 벡터 group이고
아래는 벽좌표 에서 상하좌우에 붙어있는 그룹번호에 대한 넓이를 카운트 해서 마지막에 % 10 하여 저장 하였습니다.
예제랑 게시판 반례도 맞던데 아예 1프로 조차도 안오르고 바로 틀렸다고 나오네요.. 제발 부탁 드립니다.. 한번만 도움을 주세요..
group 배열의 크기가 너무 작습니다.
왜냐하면 MAX 가 매크로이기 때문에
MAX * MAX 는 1000 + 1 * 1000 + 1 이고,
따라서 MAX * MAX 는 2001이 되기 때문입니다.
#define MAX 1001
또는
#define MAX (1000 + 1)
const int MAX = 1000 + 1;
로 수정해보세요
매크로 곱하기를 하면 그렇게 처리된다는 사실을 오늘 처음알았네요..
정말 감사합니다.. 전에도 제질문에 친절히 답변해주신분 같은데..
감사드려요..
아직도 배울것이 많네요
다시한번 감사드립니다.
다시보니 1000 + 1 * 1000 + 1 이라 매크로라 그렇게 곱셈결과가 나온것이아니라
그냥 곱셉먼저 계산되어 그렇게 나온거였군요 MAX를 그냐ㅑ1001이라 저장했으면 제대로 나왔을건데..
ㅋㅋ 바보 같네요 저가..
댓글을 작성하려면 로그인해야 합니다.
smu04129 3년 전
벽아닌곳 좌표 따로 저장, 벽좌표 따로저장 후
벽아닌곳에 좌표의 그룹 번호와 (10번 부터시작) 넓이를 저장한 벡터 group이고
아래는 벽좌표 에서 상하좌우에 붙어있는 그룹번호에 대한 넓이를 카운트 해서 마지막에 % 10 하여 저장 하였습니다.
예제랑 게시판 반례도 맞던데 아예 1프로 조차도 안오르고 바로 틀렸다고 나오네요.. 제발 부탁 드립니다.. 한번만 도움을 주세요..