"각각의 칸은 (r, c)로 나타내며, r은 가장 위에서부터 떨어진 칸의 개수, c는 가장 왼쪽으로부터 떨어진 칸의 개수이다. r과 c는 1부터 시작한다."
따라서 (x, y)라고 썼으면 x가 가장 위에서부터 떨어진 칸의 개수, y가 가장 왼쪽으로부터 떨어진 칸의 개수입니다. 문제될 것이 있나요?
16235번 - 나무 재테크
그건 r과 c에 대한 설명일 뿐 x, y에 대한 설명일 것이라고 추측하기는 어렵다고 생각합니다.
다음 M개의 줄에는 상도가 심은 나무의 정보를 나타내는 세 정수 x, y, z가 주어진다. 처음 두 개의 정수는 나무의 위치 (x, y)를 의미하고, 마지막 정수는 그 나무의 나이를 의미한다.
이 부분을 다음과 같이 바꾼다면 오해의 소지가 없을 것입니다.
다음 M개의 줄에는 상도가 심은 나무의 정보를 나타내는 세 정수 r, c, z가 주어진다. 처음 두 개의 정수는 나무의 위치 (r, c)를 의미하고, 마지막 정수는 그 나무의 나이를 의미한다.
"r과 c는 양분을 얼마를 줘야 하는지 나타내는 배열인 A의 인덱스를 나타내기 위해 쓴 값입니다."
아니요. 그건 입력 설명에서 사용한 변수 r, c이고, 문제 상단에 적혀있는 r, c와는 연관이 없습니다. 문제 상단에서 말한 것은 오직 (r, c)가 어떤 칸을 나타내는 것이고 이때의 r은 가장 위에서부터 떨어진 칸의 개수, c는 가장 왼쪽으로부터 떨어진 칸의 개수라는 것 뿐입니다.
따라서 지문의 다른 부분에서 (x, y)라고 쓰든, (a, b)라고 쓰든, 이것이 어떤 칸을 나타내는 것임은 명확하고 전혀 모호하지 않습니다.
다시 정리하자면,
아 그렇네요, 문제의 초두에서 각 칸을 두 정수의 순서쌍으로 나타낸다는 표현으로 시작하는군요. 제 불찰입니다. ㅠㅠ
그렇지만 실제 시험장에서 (r, c)로 표현했다가 (x, y)로 바꿔 표현한 게 아니라면, 표현이 정확했다 하더라도 수정하는 게 어떨까 제안드려봅니다.
질문게시판에도 이 부분 때문에 헷갈려한 분들도 다수 계시고, 저 역시 시험을 준비하는 급박한 상황에서 이 부분 때문에 상당한 시간을 소모했습니다.
물론 알고리즘 실력 연마가 아니라 대회나 코딩테스트의 고득점을 목표로 한다면 문제를 정확히 읽고 이해하는 능력 역시 중요하니 반드시 바꿔야 한다고는 말씀드리지 못하겠습니다.
하지만 실제 기출문제가 어떤 표현을 선택했는지, 그리고 본 사이트가 중점을 두는 부분이 어디인지에 따라 고려해볼 수 있는 논의라고 생각합니다.
(행, 열)이 (x, y)냐, (y, x)냐의 논쟁은 아마도 끊이지 않을 것입니다. https://www.acmicpc.net/poll/view/7
그래서 백준님도 문제를 만드실 때 가능하면 (r, c)를 사용하려고 하신다고 언급하신 적이 있습니다. 단, 기존에 이미 x와 y를 사용한 것은 고치지 않으신다고 합니다. https://www.acmicpc.net/board/view/30352
게다가 이 문제에서는 입력 문단에서 이미 r, c라는 이름을 사용하는 곳이 있어 오히려 그 쪽과 헷갈릴 여지가 있습니다.
그리고 저는 이런 부분을 수정하지 않음으로써 얻을 수 있는 부분이 많다고 생각합니다. 이 문제는 아무리 틀려도 손해가 없고, 그저 연습을 하기 위한 용도일 뿐입니다. 이 문제에서 오랜 시간 고생을 하심으로써 앞으로는 지문을 더 꼼꼼하게 읽게 되실 것이고, 실제 시험장에서 헷갈리게 만드는 요소가 있어도 실수하지 않으실 가능성이 커졌습니다. 여기에서 이런 경험을 해보지 않으셨다면 정작 중요한 상황에서 난관을 겪게 되지 않으실까요? 좋은 경험을 하셨다고 생각하셨으면 좋겠습니다.
댓글을 작성하려면 로그인해야 합니다.
42desix 4년 전 6
이 부분에서 x를 행의 인덱스(세로 인덱스), y를 열의 인덱스(가로 인덱스)로 보고 풀어야 정답처리가 되는데요, 그에 대한 언급이 어디에도 없습니다.
첫번째 원소가 행이고 두번째 원소가 열인 배열은 A일 뿐, 저 x, y는 그와 독립적으로 주어지는 값입니다. 따라서 거꾸로 주어져도 이상할 게 없죠. 굳이 x, y라고 되어있다면 '(열, 행)의 순서로 주어지는구나'라고 생각하는 게 전혀 이상하지 않아보입니다.
삼성 역량테스트 문제는 사람들의 기억에 의해 복원되는 것으로 알고 있습니다. 실제 시험에서 저렇게 x, y가 뭔지 알려주지 않고 출제되었다는 게 확실하다면 어쩔 수 없고, 실제 연습할 때도 바뀌었을 가능성을 염두에 두고 두 번씩 제출해봐야겠지만, 그게 아니라면 수정이 꼭 필요한 부분이라고 생각합니다.