• jzoj 6826. 【2020.10.17提高组模拟】隔膜(lcyrcx)


    Description

    Input

    Output

    Solution

    分成几种情况来讨论依次一下:
    1.当找不到(k*k)的矩阵时,显然是后手赢了
    2.当找到有且仅有一个(k*k)的矩阵(及不存在其他矩阵或其他矩阵都与该矩阵相交)时,先手胜
    3.当找到2个或2个以上的互不相交的(k*k)的矩阵时:
    因为一旦找到(k*k)的空格子便可以在任意一个空格子处放棋子,所以最后可以转换成先把两个不相交的矩形以外的点先全部取完的情况
    此时因为只剩两个矩形,所以取下一步的人必输
    所以对于这种情况,我们统计全图空格子的个数,判断奇偶就好(因为两个矩阵的大小必定会是偶数,不会产生影响)

    Code

    #include <cstdio>
    #include <algorithm>
    #define open(x) freopen(x".in","r",stdin);freopen(x".out","w",stdout);
    using namespace std;
    int n,k,i,j,tmp,map[1010][1010],bz[1010][1010],cnt[1010][1010];
    char p;
    int main()
    {
        open("lcyrcx");
        scanf("%d%d",&n,&k);
        for (i=1;i<=n;i++)
        {
            p=getchar();
            while (p!='0'&& p!='1') p=getchar();
            j=1;
            map[i][j]=p-'0';
            tmp+=map[i][j];
            while (p=='0' || p=='1') p=getchar(),map[i][++j]=p-'0',tmp+=map[i][j];
        }
        for (i=1;i<=n;i++)
        {
            for (j=1;j<=n;j++)
            {
                cnt[i][j]=cnt[i-1][j]+cnt[i][j-1]-cnt[i-1][j-1]+map[i][j];
                bz[i][j]=bz[i-1][j]+bz[i][j-1]-bz[i-1][j-1];
                if (i>=k && j>=k)
                {
                    if ((cnt[i][j]-cnt[i-k][j]-cnt[i][j-k]+cnt[i-k][j-k])!=0) continue;
                    bz[i][j]++;
                    if (bz[i-k][n] ||(j+k<=n &&  bz[i-1][n]-bz[i-1][j+k-1])) 
                    {
                        if (tmp%2) printf("rx");else printf("yc");
                        exit(0);
                    }
    
                }
            }
        }
        if (bz[n][n]) printf("rx");else printf("yc");
        return 0;
    }
    
    如果自己说什麽都做不到而什麽都不去做的话,那就更是什麽都做不到,什麽都不会改变,什麽都不会结束.
  • 相关阅读:
    (没有意义讨论)二元运算符和自加符的深入理解,小心多个++的陷阱
    c语言复杂变量声明(数组、指针、函数)
    bundle对象传送序列化serialization引用时问题
    android异步任务详解 AsynTask
    servlet使用get方法传送中文参数
    服务器2
    windows server 2003 网站无法访问,重启iis也不行。重启系统解决了。
    得到本周第一天
    JS时间大全
    树状侧边栏
  • 原文地址:https://www.cnblogs.com/Sport-river/p/13849126.html
Copyright © 2020-2023  润新知