1146_五子棋游戏

2022-5-16 18:17| 发布者: Hocassian| 查看: 95| 评论: 0|原作者: 肇庆学院ACM合集

摘要:
C:\Users\Administrator\Downloads\2019-10-12-10-14-2-89503648426400-Problem List-采集的数据-后羿采集器.html

Pro.ID

1146

Title

五子棋游戏

Title链接

http://10.20.2.8/oj/exercise/problem?problem_id=1146

AC

0

Submit

7

Ratio

0.00%

时间&空间限制

  • Time Limit: 0/0 MS (Java/Others)     Memory Limit: 0/0 K (Java/Others)
  • 描述

    1.  问题提出
    编写一个智能五子棋程序,使其可以进行人机交互,并进行人机对弈。

    2.  功能要求
    棋盘为19×19格子,以字符界面输出。(若实现图形界面,可适当加分)。
    游戏可让玩家选择先手或后手。
    可假定用x表示机器下的子,o表示玩家下的子。(也可用 实心小圆圈 和 空心小圆圈 表示)
    每走一步,屏幕均刷新显示形如图1 或图2 或图3 所示的棋盘状态。

      1  2  3  4  5  6  7  8  9  10 11 12 13 14 15 16 17 18 19
    a  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    b  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    c  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    d  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    e  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    f  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    g  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    h  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    i  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    j  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    k  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    l  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    m  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    n  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    o  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    p  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    q  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    r  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    s  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .

    please put your stone ( e.g. "a1" ) : i9


    图1 棋盘初始状态

      1  2  3  4  5  6  7  8  9  10 11 12 13 14 15 16 17 18 19
    a  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    b  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    c  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    d  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    e  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    f  .  .  .  .  .  .  .  ●  o  ●  .  .  .  .  .  .  .  .  .
    g  .  .  .  .  .  .  .  o  o  .  .  .  .  .  .  .  .  .  .
    h  .  .  .  .  .  .  .  o  ●  .  .  .  .  .  .  .  .  .  .
    i  .  .  .  .  .  .  .  .  .  ●  .  .  .  .  .  .  .  .  .
    j  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    k  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    l  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    m  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    n  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    o  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    p  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    q  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    r  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    s  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .

    please put your stone ( e.g. "a1" ) : g10

    图2 游戏进行中的状态

      1  2  3  4  5  6  7  8  9  10 11 12 13 14 15 16 17 18 19
    a  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    b  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    c  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    d  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    e  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    f  .  .  .  .  .  .  .  ●  o  ●  o  .  .  .  .  .  .  .  .
    g  .  .  .  .  .  ●  o  o  o  ●  .  .  .  .  .  .  .  .  .
    h  .  .  .  .  .  .  .  o  ●  o  .  .  .  .  .  .  .  .  .
    i  .  .  .  .  .  .  .  ●  o  ●  .  .  .  .  .  .  .  .  .
    j  .  .  .  .  .  .  ●  o  .  .  .  .  .  .  .  .  .  .  .
    k  .  .  .  .  .  ●  .  .  .  .  .  .  .  .  .  .  .  .  .
    l  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    m  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    n  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    o  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    p  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    q  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    r  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    s  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .

    I win.

    图3 某一方获胜的状态

    五子棋游戏应具备一定的智能,如:
    (1) 判断当前棋局的胜负:当任何一方下子之后,立刻判断是否有任何一方获胜。如发现有一方已赢,则显示胜方,并结束游戏
    (2) 判断当前棋盘是否还能下子。如不能下子,则判为和局
    (3) 可通过“搜索”“概率计算”“定式识别”等多种方法,提高游戏的防御能力和进攻能力
    (4) 机器“思考”时间不应过长,每一步限制在5秒内比较合适

    3.  知识点及参考资料
    知识点:文件、循环、数组、函数、递归等。
    参考资料:C语言程序设计(第二版)(教材),自学的五子棋知识。

    输入

    NULL

    输出

    Description

    1.  问题提出
    编写一个智能五子棋程序,使其可以进行人机交互,并进行人机对弈。

    2.  功能要求
    棋盘为19×19格子,以字符界面输出。(若实现图形界面,可适当加分)。
    游戏可让玩家选择先手或后手。
    可假定用x表示机器下的子,o表示玩家下的子。(也可用 实心小圆圈 和 空心小圆圈 表示)
    每走一步,屏幕均刷新显示形如图1 或图2 或图3 所示的棋盘状态。

      1  2  3  4  5  6  7  8  9  10 11 12 13 14 15 16 17 18 19
    a  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    b  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    c  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    d  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    e  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    f  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    g  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    h  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    i  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    j  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    k  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    l  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    m  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    n  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    o  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    p  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    q  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    r  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    s  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .

    please put your stone ( e.g. "a1" ) : i9


    图1 棋盘初始状态

      1  2  3  4  5  6  7  8  9  10 11 12 13 14 15 16 17 18 19
    a  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    b  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    c  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    d  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    e  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    f  .  .  .  .  .  .  .  ●  o  ●  .  .  .  .  .  .  .  .  .
    g  .  .  .  .  .  .  .  o  o  .  .  .  .  .  .  .  .  .  .
    h  .  .  .  .  .  .  .  o  ●  .  .  .  .  .  .  .  .  .  .
    i  .  .  .  .  .  .  .  .  .  ●  .  .  .  .  .  .  .  .  .
    j  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    k  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    l  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    m  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    n  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    o  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    p  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    q  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    r  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    s  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .

    please put your stone ( e.g. "a1" ) : g10

    图2 游戏进行中的状态

      1  2  3  4  5  6  7  8  9  10 11 12 13 14 15 16 17 18 19
    a  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    b  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    c  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    d  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    e  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    f  .  .  .  .  .  .  .  ●  o  ●  o  .  .  .  .  .  .  .  .
    g  .  .  .  .  .  ●  o  o  o  ●  .  .  .  .  .  .  .  .  .
    h  .  .  .  .  .  .  .  o  ●  o  .  .  .  .  .  .  .  .  .
    i  .  .  .  .  .  .  .  ●  o  ●  .  .  .  .  .  .  .  .  .
    j  .  .  .  .  .  .  ●  o  .  .  .  .  .  .  .  .  .  .  .
    k  .  .  .  .  .  ●  .  .  .  .  .  .  .  .  .  .  .  .  .
    l  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    m  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    n  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    o  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    p  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    q  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    r  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .
    s  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .  .

    I win.

    图3 某一方获胜的状态

    五子棋游戏应具备一定的智能,如:
    (1) 判断当前棋局的胜负:当任何一方下子之后,立刻判断是否有任何一方获胜。如发现有一方已赢,则显示胜方,并结束游戏
    (2) 判断当前棋盘是否还能下子。如不能下子,则判为和局
    (3) 可通过“搜索”“概率计算”“定式识别”等多种方法,提高游戏的防御能力和进攻能力
    (4) 机器“思考”时间不应过长,每一步限制在5秒内比较合适

    3.  知识点及参考资料
    知识点:文件、循环、数组、函数、递归等。
    参考资料:C语言程序设计(第二版)(教材),自学的五子棋知识。

    Input

    NULL

    Output

    NULL

    Sample Input

    NULL

    Sample Output

    NULL

    Author

    样例输入

    NULL

    样例输出

    NULL

    提示

    作者


    路过

    雷人

    握手

    鲜花

    鸡蛋

    最新评论

    返回顶部