zoukankan      html  css  js  c++  java
  • Lightoj 1020

    题目链接:

      1020 - A Childhood Game

    题目描述:

      Alice和Bob在玩弹珠游戏,两人轮流拿走弹珠,每次只能拿走一个或者两个,当Alice作为先手时谁拿走最后一个就是输家,而Bob作为先手时谁拿走最后一个就是赢家,问最后谁是赢家?

    解题思路:

      很基础的博弈题目,我们可以知道当Alice作为先手的时候:n=1(Alice lose),  n=2(Alice win),  n=3(Alice win),   n=4(Alice lose),   n=5(Alice win).

    从上面可以看出,因为每次可以取走一个或者两个,Alice肯定做出对自己有利的抉择,所以有a[n] = !(a[n-1] && a[n-2])(1为win,0为lose) 。

      对于Bob作为先手也是类似于上面的推到方法,a[n] = !(a[n-1] && a[n-2])。

     1 #include <bits/stdc++.h>
     2 using namespace std;
     3 int main ()
     4 {
     5     long long n, t, l = 0;
     6     char str[10];
     7     scanf ("%lld", &t);
     8     while (t --)
     9     {
    10         scanf ("%lld %s", &n, str);
    11         if (!strcmp(str, "Bob"))
    12         {
    13             if (n %3  == 0)
    14                 printf ("Case %lld: Alice
    ", ++l);
    15             else
    16                 printf ("Case %lld: Bob
    ", ++l);
    17         }
    18         else
    19         {
    20             if (n % 3 == 1)
    21                 printf ("Case %lld: Bob
    ", ++l);
    22             else
    23                 printf ("Case %lld: Alice
    ", ++l);
    24         }
    25     }
    26     return 0;
    27 }

    本文为博主原创文章,未经博主允许不得转载。
  • 相关阅读:
    Redhat 7使用CentOS 7的Yum网络源
    指定YUM安装包的体系结构或版本
    CURL常用命令
    VIM技巧之去除代码行号并缩进代码
    VIM 中鼠标选择不选中行号
    linux服务器性能优化
    阻塞,非阻塞,同步,异步
    WEB三层架构与MVC
    mvc与三层结构
    Centos环境下Tomcat启动缓慢
  • 原文地址:https://www.cnblogs.com/alihenaixiao/p/4662633.html
Copyright © 2011-2022 走看看