xodn0812   7년 전

문제 입력에 보면

첫째 줄에 지도의 세로 크기 N, 가로 크기 M (1 ≤ N, M ≤ 20), 주사위를 놓은 곳의 좌표 x y(0 ≤ x ≤ N-1, 0 ≤ y ≤ M-1), 그리고 명령의 개수 K (1 ≤ K ≤ 1,000)가 주어진다.

라고 쓰여있어요.

"주사위 놓은 곳은 좌표 x, y"라고 되어있는데, 저거 y, x로 수정해주셔야 됩니다.

입출력 예제에도 모두 x, y가 같은 숫자여서 의심하지도 못했네요.. 덕분에 오랫동안 자괴감에 빠져있었습니다..

honeybee   7년 전

지도의 좌표는 (r, c)로 나타내며, r는 북쪽으로부터 떨어진 칸의 개수, c는 서쪽으로부터 떨어진 칸의 개수이다. 
라고 명시돼 있어서 문제가 없을 것 같습니다.

slanjdu   7년 전

첫째 줄에 지도의 세로 크기 N, 가로 크기 M (1 ≤ N, M ≤ 20), 주사위를 놓은 곳의 좌표 x y(0 ≤ x ≤ N-1, 0 ≤ y ≤ M-1), 그리고 명령의 개수 K (1 ≤ K ≤ 1,000)가 주어진다.

라고 명시되어있어요 세로가N 가로가M 좌표계의 x,y가 아니라 범위를 보셧어야 하는 문제 같습니다!

xodn0812   7년 전

아뇨.

첫째 줄에 지도의 세로 크기 N, 가로 크기 M (1 ≤ N, M ≤ 20)     <- 이건 앱을 의미합니다. 맵의 크기가 N * M이라는 말이고, 그 뒤에 나오는

 주사위를 놓은 곳의 좌표 x y(0 ≤ x ≤ N-1, 0 ≤ y ≤ M-1)           <- 이건 시작점을 의미하지요. 맵은 y축부터 안내하는데, 주사위 좌표는 x축부터 안내합니다. 그 외에 다른 언급은 없고요. 근데 입력을 x부터 받으면 틀립니다.

잘못된 것 맞습니다..

baekjoon   7년 전

잘못된 것 아닙니다. 

문제 그 어디에도 x축, y축이란 말 없습니다

kdk8361   7년 전

가로축이 x, 세로축이 y인 좌표공간에 기반한다는 말은 한마디도 없습니다.

xodn0812   7년 전

보통 알고리즘 문제는 인풋 순서를 알려주지 않나요?
N부터 입력되는지 M부터 입력되는지.
저 문제에는 x,y가 입력된다고만 했지, y부터인지 x부터인지 알 수 없습니다.
그래서 문제를 보고 입력에 나오는 순서대로 scanf에 쓴 제가 오해했었고요.
충분한 오해의 소지가 있는데, 수정해야 되는거 아닐까요?  x,y가 아니라 y,x로요.

xodn0812   7년 전

"가로축이 x, 세로축이 y인 좌표공간에 기반한다는 말은 한마디도 없습니다." 라고 하셨는데,

첫째줄 3, 4번째 인풋에 대한 정보가  x,y 라는 것 밖에 없습니다. 누구라도 저걸 보고 "x는 x축을 의미하는 구나"라고 생각할 수 있겠죠.

그래서 저는 따로 x,y의 입력 순서에 대한 언급이 없어서 당연히 x가 x축인줄 알았고요. 충분히 오해의 소지가 있어보이는데요.

kdk8361   7년 전

음... 저는 x,y값의 제한을 보면 충분히 알 수 있다고 생각합니다.

baekjoon   7년 전

문제의 첫 문단을 보시면 지도의 좌표는 (r, c)로 나타내며, r는 북쪽으로부터 떨어진 칸의 개수, c는 서쪽으로부터 떨어진 칸의 개수이다.  라고 쓰여져 있습니다

xodn0812   7년 전

맞네요. 그런데 알고리즘 문제에 굳이 자세히 안보면 알 수 없는 저런 함정을 만들어 놔야 할까요?
x y(0 ≤ x ≤ N-1, 0 ≤ y ≤ M-1) 이걸 자세히 안본 제가 잘못한거긴 한데.. y랑 x랑 순서를 바꾸면 저 같은 덜렁거리는 사람도 잘 이해하고 문제에 집중할 수 있을 것 같네요..

baekjoon   7년 전

알고리즘 문제에서 주로 세로는 x로 가로는 y로 사용하고 있습니다. 다른 문제도 그렇게 사용하는 경우가 꽤 많고요.

마찬가지로 세로 크기는 보통 N, 가로 크기는 보통 M으로 주어집니다.

세로 크기를 M, 가로 크기를 N으로 해놓아 버리면 수많은 사람들이 지금 틀리신 이유로 틀릭 ㅔ됩니다.

이 문제는 제가 투표를 걸어놓기도 했습니다. https://www.acmicpc.net/poll/l...

좌표 평면이 아니고 행렬이라고 생각하고 문제를 푸는걸 추천해드립니다.

xodn0812   7년 전

아, 그렇군요.ㅎ 죄송합니다.

ntopia   7년 전

R^2 좌표평면도 아니고
2차원 배열 상의 위치를 굳이 x라는 문자와 y라는 문자를 사용해서 표기하는건 충분히 헷갈랄만한 소지가 있는 것 같습니다.

물론 문제 본문과 입력설명 부분에 드러나있기 때문에 틀린 디스크립션은 아니지만
명쾌하다고 말하기는 좀 어려운 것 같습니다.

보통은 x, y 를 사용하는게 아니라  r, c 혹은 i, j 를 많이 사용하지 않나요?

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