페북에 올라온 Zig-zag scan 풀이…
페북에 재미있는 질문이 올라왔다.아래와 같이 16개의 데이터를 정렬한 뒤 지그재그 형태로 출력하려면 어떻게 해야 되는가가 골자였다. 사실 이 문제는 멀티미디어 쪽 종사자라면 굉장히 자주 접하는 문제다.정석적인 풀이는 지그재그 테이블을 생성하고 그 테이블에 따라 값을 출력하는 것이다. 4행부터 시작되는 MakeZigzagTable() 함수가 그 테이블을 생성해주는 함수이다. #include #include int *MakeZigzagTable(int nWidth) { int *table = new int[nWidth*nWidth]; bool directionIsUp = true; int x = 0, y = 0; int val = 0; while (true) { table[y*nWidth + x] = val..