기본 콘텐츠로 건너뛰기

이원 - 의자에 어울리는 사람이 되기 위해

의자에 어울리는 사람이 되기 위해 

곧추 세운 등뼈 아래로 
엉덩이를 엉거주춤 유지해야 하는 
이 포즈는 도대체 무엇입니까 

각자의 배후를 전적으로 위탁하는 포즈를 
우리는 언제부터 배워야 했습니까 
의자에 어울리는 사람이 되기 위해 
어디부터 구부려야 했습니까 
어디를 숙여야 했습니까 

의자를 닮기 위해 
발을 매단 채 손을 매단 채 
이상한 도형이 되어야 했습니다 

침묵하고 있는 이 짐승은 언제 달리기 시작하나요 

창 밖 난간으로는 발음을 모르는 혀들이 몰려들었습니다 
밤의 숲에 가면 뼈의 외침이 나무라는 것을 알게 됩니다 
사로잡힌 척 의자에 앉아 우리는 손만 쉴 새 없이 움직입니다 
한 끼를 위한 너덜너덜한 손의 동작을 왜 멈출 수 없습니까 
항문과 입을 동시에 벌리는 법 

우리는 어쩌면 이토록 징그러운 동작을 배웠을까요 

의자 손잡이가 비명을 지르고 있는 입이라 해도 

고해성사의 순서를 알게 되었다면 그것 또한 
사소한 습관이 아니겠습니까 

뒷모습이 구겨져 있습니다 
깜깜한 곳에 우리는 너무 오래 접혀 있었습니다 

그런데 당신 
의자와 의자가 대화하는 것을 믿습니까 

토하고 말았지요 

이런! 
의자들끼리는 당황은 하지 않습니다

---------------------------------------------

놀라운 발상

댓글

이 블로그의 인기 게시물

좌표압축

알 고리즘을 풀다 보면 좌표압축이라는 테크닉이 필요합니다. 저는 좌표압축을  "순위가 중요한 알고리즘에서, 입력값의 갯수보다 입력값의 범위가 클 때 사용하는 방법",  이라고 생각하고 있습니다. 1차원의 좌표로 예를 들어보겠습니다. n개의 x값 을 입력 받아, 입력 중 두개의  x1,x2를 선택하여 사이에 존재하는 점의 개수를 구하는 작업이 있다고 가정합시다. x의 범위는 int형의 범위인 -2^31 ~ 2^31-1 이고 중복은 없습니다. n은 5000 이하입니다. 입력은 n : 7, -2^31, -10000, 0 , -2000, 3, 6, 30000 , x1 = -10000, x2 = 30000 대략적으로 보면 그림과 같이 나타나게 됩니다. x1,x2 사이의 값을 구하게 되면 4개의 값이 나오게 됩니다. 이 경우 위의 값들을 아래와 같이 순위를 유지하면서 바꿔주어도 문제를 풀 수가있습니다. 이렇게   바꿔서 풀 수 있는 이유는 값보다 값의 순위가 중요하기 때문 입 니다. 압축좌표가  필요한 예 로, 카카오 코드 페스티벌 5번 캠핑 문제가 될 수 있습니다. 이 경우 좌표  x,y의 범위는 0 ~ 2^31-1  이지만, 입력받는  좌표의 개수는 최대 5000개  입니다. 만약 입력의 좌표를 그대로 반영하여 문제를 푼다고 하면 배열의 크기가 2^31-1 개가 되어야 합니다. 게다가 2차원으로.. 못풉니다. 탐색하다가 시간다 끝날꺼에요. 하지만 입력이 최대의 개수가 최대 5000이라고 했으니 좌표압축을 이용해 입력받은 좌표를 0~5000 으로 매치시키고 풀게되는 것 입니다.