八皇后问题的ABAP实现
*&---------------------------------------------------------------------*
*& Report
*&
*&---------------------------------------------------------------------*
*八皇后问题是一个古老而著名的问题,是回溯算法的典型例题。该问题是十九世
*纪著名的数学家高斯1850年提出:在8X8格的国际象棋上摆放八个皇后,使其不
*能互相攻击,即任意两个皇后都不能处于同一行、同一列或同一斜线上,问有多
*少种摆法。
*高斯认为有76种方案。1854年在柏林的象棋杂志上不同的作者发表了40种不同的
*解,后来有人用图论的方法解出92种结果。
*&---------------------------------------------------------------------*
REPORT
TYPES: BEGIN OF itab,
DATA: gt_itab TYPE STANDARD TABLE OF itab WITH HEADER LINE.
DATA: g_line TYPE n LENGTH 1 VALUE '1',
START-OF-SELECTION.
**初始化第一行
**递归主体FORM
*&---------------------------------------------------------------------*
*&
*&---------------------------------------------------------------------*
*
*----------------------------------------------------------------------*
*
*
*----------------------------------------------------------------------*
FORM main_form
**从当前行的下一行的第一个位置开始CHECK
**CHECK到本行最后一个位置
**CHECK到最后一行
**CHECK FROM
**此位置可用
**如果已经CHECK满8行,则输出
**未满8行,继续CHECK下一行
**此位置不可用,CHECK下一位置