지식

마방진의 원리

지나간날의기억 2006. 9. 12. 16:08

홀수 마방진의 작성법

(n=3,5,7,9,...)

5 x 5칸의 작성 방법.
(n=5, sum=65)

  1. 첫번째 숫자를 1행의 중앙열에 넣는다.

  2. 대각선 방향(한칸 위와 한 칸 옆)으로 이동한 곳에 다음 숫자를 넣는다.

    만약 위치가 영역을 벗어날 경우 반대편 행(또는 열)의 위치에 숫자를 넣는다.

  3. 위의 단계를 이미 숫자가 저장되어 있는 칸을 만날 때까지 5회(n회)만큼 반복한다.

  4. 3단계의 마지막 숫자를 넣은 곳에서 바로 아래 칸에 다음의 숫자를 넣고 위의 2번 단계서부터 다시 반복한다.

    제 1 장면 => 제 2 장면 => 완성 장면

    기본적으로 대각선 방향으로 칸을 이동하며 숫자를 채우되 채울 칸에 이미 숫자가 들어 있는 경우에 다음 칸의 위치 선택만 신경써서 작성하면 된다

 

4의 배수 마방진의 작성법

(n=4,8,12,..)

4 x 4칸의 작성 방법.
(n=4, sum=34)

  1. 아래 그림처럼 영역을 9개의 구역으로 나눈다.

    영역 나누기
    4의 배수 칸들(n=4,8,12,..)은 1 : 2 : 1의 비율로 정확히 나눌 수 있다.

  2. 암회색으로 표시된 A, C, E, G 와 I 영역은 글을 써 내려가듯이 정방향으로 숫자를 차례로 써 넣는다.

    1 2 3 4
    5 6 7 8
    9 10 11 12
    13 14 15 16

  3. 밝은회색의 나머지 영역은 끝에서부터 역방향으로 숫자를 차례로 써 올라온다.

    1 15 14 4
    12 6 7 9
    8 10 11 5
    13 3 2 16


이해를 돕기 위한 8x8 칸의 예.
(n=8, sum=260)

1 2 62 61 60 59 7 8
9 10 54 53 52 51 15 16
48 47 19 20 21 22 42 41
40 39 27 28 29 30 34 33
32 31 35 36 37 38 26 25
24 23 43 44 45 46 18 17
49 50 14 13 12 11 55 56
57 58 6 5 4 3 63 64

4의 배수 마방진의 분석 코너에서는 8x8칸을 중심으로 보다 구체적이고 다양한 4의 배수 마방진의 작성법을 보실 수 있습니다

 

기타 마방진의 작성법

(n=6,10,14,...)

6 x 6칸의 작성 방법.
(n=6, sum=111)

  1. 이 칸들은 4로 약분되지 않고 두 칸이 남으므로, 영역을 아래 그림처럼 나눈다. 우선 분홍색의 경계블록 영역을 경계선처럼 보면 이해가 쉽다.
    영역나누기

  2. A 에서 I 까지의 영역은 4의 배수칸들의 작성법을 적용하여 숫자를 채워 넣는다.

    1차 작성 테두리의 수치(37)는 그 방향의 행 또는 열의 빈 칸에 들어갈 숫자들의 합이 만족시켜야 할 값이다.

    여기서 보면 경계블록의 숫자들에 문제 해결의 열쇄가 있음을 알 수 있다.

    그러면 실제로 경계블록 숫자들을 적절히 조작하여 마방진을 완성시키자.

  3. 우선은 4개의 경계블록 칸에 숫자를 정방향으로 써 내려가자.

    경계블록 숫자 여기서 알고 있어야할 두가지 사실은:

    • 경계블록의 수치들은 곧 조작을 통하여 자리바꿈을 하게 될 것이며,

    • 교차된 지점의 'X' 표시가 된 칸의 숫자들은 자리바꿈에서 제외된다. 왜냐하면 그 숫자들은 대각선의 합과도 관계되기 때문이다.

  4. 우선 좌-우 경계블록의 조작을 먼저 하겠다.

    좌-우 경계블록의 조작 절차

    1. 우측경계블록의 숫자 배열을 상하로 뒤집는다. ==> 가로방향 해결 !!
      (좌측경계블록을 뒤집는 방법도 연구해 보세요..)
    2. 경계블록의 중앙부분에 있는 숫자들을 좌우로 교환시킨다. ==> 세로방향 블록 1차 정리.
    3. 'X' 표시한 칸의 숫자들을 포함한 블록의 세로 합을 보정하기 위해 중앙선의 바로 아래칸(행)에 해당하는 두 숫자를 다시 좌우 교환시킨다. ==> 세로방향 블록 해결 !!

  5. 상-하 경계블록을 위와 같은 절차대로 하다보면 마지막 단계에서 전체 보정을 위한 교환 쌍을 찾을 수 없게 된다. 이 문제를 해결하기 위하여 부득이 아래 그림처럼 다른 영역의 숫자열을 택해서 좌우 순서열을 바꾸어주어야 한다.

    2차 작성
    • 'B' 또는 'H' 영역 중의 한 행을 택해서 좌우 순서열을 바꾸어준다. (cf. 34 <= => 33)

    • 'D' 영역과 'F' 영역 중의 같은 한 행을 택해서 좌우 순서열을 바꾸어준다. (cf. 24 <= => 19)

    각 열의 합이 만족시켜야 할 값이 변경되었다(42-38-36-32). 그러나 위의 5번 단계의 조작을 해줌으로써 나중에 마지막 보정을 성공적으로 할 수 있게 된다. 또한 단계 6-a 처럼 해줌으로써 변경된 세로합의 요구치들(42-38-36-32)을 쉽게 일치시킬 수 있게 된다.

  6. 5번 단계와 연계하여 상-하 경계블록의 조작을 다음과 같이 한다.

    상-하 경계블록의 조작 절차

    1. 상,하경계블록의 숫자 배열을 둘 다 좌우로 뒤집는다. ==> 세로방향 해결 !!
    2. 경계블록의 중앙부분에 있는 숫자들을 상하로 교환시킨다. ==> 가로방향 블록 1차 정리.
    3. 'X' 표시한 칸의 숫자들을 포함한 블록의 가로 합을 보정하기 위해 첫번째칸(열)에 해당하는 두 숫자를 상하 교환시킨다. ==> 가로방향 블록 해결 !!
      (마지막 칸에 해당하는 두 숫자를 선택해도 상관 없겠지요..)

    완성된 마방진 짜~쟌~~ , 마방진 완성!!


이해와 확인을 돕기 위한 10x10 칸의 예.
(n=10, sum=505)

1 2 3 94 95 96 97 98 9 10
11 12 13 87 86 85 84 88 19 20
80 29 23 77 76 75 74 28 22 21
70 69 68 34 35 36 37 33 62 61
60 59 58 44 45 46 47 43 52 51
41 42 53 54 55 56 57 48 49 50
40 39 38 64 65 66 67 63 32 31
30 79 73 27 26 25 24 78 72 71
81 82 83 17 16 15 14 18 89 90
91 92 93 7 6 5 4 8 99 100

 

 

'지식' 카테고리의 다른 글

6.25관련소설  (0) 2008.01.26
-세상에서 가장 아름다운 시-  (0) 2007.01.29
계정과목2  (0) 2006.07.19
계정과목  (0) 2006.07.15
계정과목익히기  (0) 2006.07.12