• hdu 5754 Life Winner Bo 博弈论


    对于king:我是套了一个表。

    如果起点是P的话,则是后手赢,否则前手赢。  

    车:也是画图推出来的。

    马:也是推出来的,情况如图咯。

    对于后:比赛时竟然推错了。QAQ最后看了题解:是个威佐夫博奕。(2,3),(4,6),(5,8)……(ak,ak+k),ak是当前没有出现过的最小正整数。k就是两个坐标的差值,从1,2,3,4……

    #include <iostream>
    #include <cstdio>
    #include <algorithm>
    #include <cstring>
    using namespace std;
    int ty,n,m;
    int vis[1005];
    void bo1()
    {
        if(n%2==0||m%2==0)
        {
            printf("B
    ");
        }
        else
        {
            printf("G
    ");
        }
    }
    void bo2()
    {
        if(n==m)
        {
            printf("G
    ");
        }
        else
        {
            printf("B
    ");
        }
    }
    void bo3()
    {
        if(n%3==1&&m%3==1&&n==m)
        {
            printf("G
    ");
        }
        else if(n%3==0&&m==n-1)
        {
            printf("B
    ");
        }
        else if(m%3==0&&n==m-1)
        {
            printf("B
    ");
        }
        else
        {
            printf("D
    ");
        }
    }
    void bo4()
    {
      memset(vis,0,sizeof(vis));
      int maxn = max(n,m);
      int cnt = 1;
      int flag = 0;
      for(int i=2;i<=maxn;i++)
      {
          if(vis[i]) continue; //当前没访问过的最小正整数
          int j = i+cnt;
          cnt++;
          vis[i] = vis[j] = 1;
          if(i==min(n,m)&&j==max(n,m)) flag = 1;
      }
      if(flag) printf("G
    ");
      else printf("B
    ");
    }
    int main()
    {
        int t;
        cin>>t;
        while(t--)
        {
            scanf("%d %d %d",&ty,&n,&m);
            switch(ty)
            {
                case 1:
                bo1();
                break;
                case 2:
                bo2();
                break;
                case 3:
                bo3();
                break;
                case 4:
                bo4();
                break;
            }
        }
        return 0;
    }
    卷珠帘
  • 相关阅读:
    Caused by: java.net.ConnectException: Connection timed out: connect
    检测是否安装了vsftpd
    如何配置nginx
    如何将文件压缩成.tar.gz格式的文件
    如何在linux中解压.rar文件
    在linux环境中配置solr
    linux环境下查看tomcat日志
    linux环境下安装solr
    在linux环境中配置tomcat
    在linux环境中如何删除文件
  • 原文地址:https://www.cnblogs.com/littlepear/p/5709481.html
Copyright © 2020-2023  润新知