오늘은 회사와서 처음으로 사무직다운 일을 했다.
비용정산서(or 품의서) 뒷면에 금액에 해당하는 영수증 붙이기.
영수증 수가 50장은 되는 것 같다.
이 때 중요한 것은 보기에 이뻐야 되고 떨어지면 안되고 한 눈에 모든 영수증을 볼 수 있어야 된다.
스태플러로 찍으면 사실 좋은 데. 너무 두꺼워 진다는 이유로 퇴짜.
A4용지 1장에 50장을 다 붙이려면 영수증들이 겹쳐지게 붙일 수 밖에 없다.
영수증 각각의 크기가 다르기 때문에 일단 영수증을 sorting해야 한다.
(종이는 너무 가볍고 줄 새우기 힘들어서 sorting이 약간 짜증난다.
무거운 돌이나 잘 안 구부러지고 크기가 일정한 포커 카드라면 쉬웠을 텐데.
영수증 중에는 모양이 약간 비뚤어진 것도 있어서 이쁘게 잘라줄 필요도 있다.)
가장 작은 영수증부터 위에서 붙이면 큰 영수증이 작은 영수증을 가릴 염려가 없다.
그 다음에 풀칠.
풀칠을 균일하게 해야 힘을 골고루 받기 때문에 떨어질 염려가 작다.
혼자 작업을 하게 되는 것보다 둘이 하면 아주 빠르게 할 수 있다.
한 사람은 책상 위에 임시 종이를 한장대고 영수증위 0.5~0.8mm 정도를 풀칠한다.
다른 사람은 이미 붙어있는 영수증을 머리 감을 때처럼 잘 잡고 붙인다.
(이 작업은 마치 대머리에 머리카락을 한가닥씩 심는 것과 비슷하다.
이미 심어져있는 머리카락을 잘 모아서 움켜쥐고 새로운 머리카락을 심어야 한다.)
혼자서 작업하면 영수증(머리카락)을 잡기 위해 한 손을 써야 되는 데. 풀칠을 위해 잡은 영수증(머리카락)을 놓아야 된다.
한 번 놓친 것을 다시 잡는 데는 추가적인 노력이 들어가기 때문에 손해.
손이 4개면 역시 편하다. 4개 이상일 때는 더 이상 의미가 없는 것 같다.
가장 적은 A4에 영수증들을 붙일 수 있는 방법을 결정하는 것은 NP 문제!!
답글삭제다행히 영수증이 A4 한 장에 들어가 있고 몇 가지 제한사항과 heuristic을 써서
답글삭제Sorting 문제로 만들었다.
Sorting도 인간은 한 번에 여러장을 한 번에 lookup할 수 있어서.
결국 O(n)에 해결.