• 五子棋(右)从给定点开始向上共有多少个连续的相同颜色的子?


    时限:1000ms 内存限制:10000K  总时限:3000ms

    描述:

    五子棋相传起源于四千多年前的尧帝时期,比围棋的历史还要悠久,可能早在“尧造围棋”之前,民间就已有五子棋游戏。有关早期五子棋的文史资料与围棋有相似之处,因为古代五子棋的棋具与围棋是完全相同的。在古代,五子棋棋具虽然与围棋相类同,但是下法却是完全不同的。正如《辞海》中所言,五子棋是“棋类游戏,棋具与围棋相同,两人对局,轮流下子,先将五子连成一行者为胜”。
    五子棋传统棋子分为黑白两色,棋盘为15*15,棋子放置于棋盘线交叉点上。两人对局,各执一色,轮流下一子,先将横、竖或斜线的5个或5个以上同色棋子连成不间断的一排者为胜。
    此题要求同学们编写程序,求出从给定点开始向上共有多少个连续的相同颜色的子(包括此点)。

    输入:

    对于本题,首先读入的是当前棋盘的状态,共15行,每行15个数字,1代表白棋,2代表黑棋,0代表为空格(未下子)。第16行有2个数字R,C代表给定点的行和列。

    输出:

    从给定点开始向上连续的相同颜色的子连续颜色子的个数(包括此点)。

    输入样例:

    0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 
    1 1 1 0 0 0 0 0 0 0 2 2 0 0 1
    0 2 2 2 0 0 0 0 2 0 0 0 0 0 1
    0 1 0 1 1 0 2 0 2 0 0 0 0 0 0
    0 0 0 0 0 0 0 0 2 0 0 1 0 0 0
    2 0 0 0 0 1 0 0 0 0 0 0 0 0 0
    2 0 0 0 0 0 0 0 0 1 0 1 0 0 0
    2 0 0 0 0 0 0 1 0 0 0 0 0 0 0
    2 0 0 0 0 0 0 2 1 0 0 0 0 1 0
    0 0 0 0 0 0 2 2 0 0 0 0 1 0 0
    2 0 0 0 0 2 0 0 0 0 0 1 0 0 0
    0 2 0 1 1 0 0 2 0 0 0 0 0 0 0
    0 0 2 0 0 0 0 0 0 1 0 0 0 0 0
    0 2 2 2 2 0 0 0 1 0 0 0 0 0 0
    1 1 1 1 0 0 0 0 0 0 0 0 0 0 0
    7 0

    输出样例:

    3

    #include<stdio.h>
    int main()
    {
        int i,j,count=0;
        int R,C;
        int Arr[15][15]={0};
        for(i=0;i<15;i++)
           for(j=0;j<15;j++)
              scanf("%d",&Arr[i][j]);
    
        scanf("%d%d",&R,&C);
            for(i=R,j=C;i>=0;i--)  
              if(Arr[i][j]==Arr[R][C])
               count++;
           else break;
            printf("%d\n",count);
        return 0;
    }
  • 相关阅读:
    记-码农的“启蒙”之《程序设计语言-实践之路》和《面向对象分析和设计》两书
    记-阅读以及书籍推荐(2014年9月7日更新)
    初探领域驱动设计(1)为复杂业务而生
    异步编程 In .NET
    Windows平台分布式架构实践
    Windows平台分布式架构实践
    一不小心写了个WEB服务器
    MVC5
    从Membership 到 .NET4.5 之 ASP.NET Identity
    bootstrap + requireJS+ director+ knockout + web API = 一个时髦的单页程序
  • 原文地址:https://www.cnblogs.com/IThaitian/p/2584437.html
Copyright © 2020-2023  润新知