HDU 3389 Game(博弈)

毫米波雷达入门知识 阅读详情

Game

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 500    Accepted Submission(s): 341


Problem Description
Bob and Alice are playing a new game. There are n boxes which have been numbered from 1 to n. Each box is either empty or contains several cards. Bob and Alice move the cards in turn. In each turn the corresponding player should choose a non-empty box A and choose another box B that B<A && (A+B)%2=1 && (A+B)%3=0. Then, take an arbitrary number (but not zero) of cards from box A to box B. The last one who can do a legal move wins. Alice is the first player. Please predict who will win the game.
 

Input
The first line contains an integer T (T<=100) indicating the number of test cases. The first line of each test case contains an integer n (1<=n<=10000). The second line has n integers which will not be bigger than 100. The i-th integer indicates the number of cards in the i-th box.
 

Output
For each test case, print the case number and the winner's name in a single line. Follow the format of the sample output.
 

Sample Input
  
2 2 1 2 7 1 3 3 2 2 1 2
 

Sample Output
  
Case 1: Alice Case 2: Bob
 

Author
hanshuai@whu
 

Source
 

Recommend
notonlysuccess   |   We have carefully selected several similar problems for you:   3387  3388  3390  3391  3393 
 

Statistic |  Submit |  Discuss | Note





/*

参考: http://www.mamicode.com/info-detail-448117.html

*/


#pragma comment(linker, "/STACK:1024000000,1024000000")
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cmath>
#include<queue>
#include<stack>
#include<vector>
#include<set>
#include<map>

#define L(x) (x<<1)
#define R(x) (x<<1|1)
#define MID(x,y) ((x+y)>>1)

#define bug printf("hihi\n")

#define eps 1e-8
typedef __int64 ll;

using namespace std;


#define INF 0x3f3f3f3f
#define N 10005

int main()
{
    int i,j,t,n,ca=0;
    scanf("%d",&t);
    while(t--)
    {
        scanf("%d",&n);
        int ans=0,x;
        for(int i=1;i<=n;i++)
        {
            scanf("%d",&x);
            if(i%6==0||i%6==2||i%6==5)
                ans^=x;
        }
       if(ans)
          printf("Case %d: Alice\n",++ca);
       else
          printf("Case %d: Bob\n",++ca);
    }
    return 0;
}


Unity 如何使用命令模式 命令模式 游戏中,当你想通过一种通用的方式来存储命令并能够撤消命令时,那么命令模式最有用。 在“示例”中,你将看到一个可以通过GUI按钮移动的简单点。 采取行动后,您可以撤消并重做。我在屏幕上添加了一个简单的OnGUI标签输出,因此您可以看到命令列表,并指出哪个是当前命令。 在此示例中使用了4个类: Command-这是任何命令模式都可以继承的基本结构(抽象类)。您可以在任何项目中使用此类。 MoveCommand-这是从Command类继承的结构,将使用Execute和UnExecute(撤消)。每个移 阅读详情

相关推荐

VCS和UVM常用编译选项

VCS编译选项 -full64 在64bit模式下编译、仿真,用于64位操作系统 -j8 指定编译器可以并行编译的进程数为8 -timescale=1ns/1ps 指定仿真时间和精度 +libext+.v+.V+.sv+.svh 识别.v、.sv、.svh等多种格式文件 -sverilog 支持system verilog 编译 -f xxx.lisf 指定包含所有设计文件列表的文件名 -top test 设置顶层模块为test。(指包含.

qq_40571921的博客 9932

hdu3389(阶梯博弈)

这个题有点意思。。 首先有2个条件的限制,分别是对2和3取膜比较难统一,所以直接对一个数%6讨论 然后可以发现,0和3之间相互转移,1和2之间相互转移,4和5之间相互转移,这样就可以把这些数对当成奇偶来处理,然后可以转化成阶梯博弈了。。 然后最先出现的模数是1,3,4,所以1,3,4为偶,2,5,6为奇,因此对所有2,5,6的石子堆做nim就可以了。。     /** *     ...

qkoqhh 256

openEuler 22.03 安装及配置Gitlab容器

在 openEuler 22.03 上安装及配置Gitlab容器

轻步玉阶 3313

Game HDU - 3389 (阶梯博弈 ||尼姆博弈变形)

Bob and Alice are playing a new game. There are n boxes which have been numbered from 1 to n. Each box is either empty or contains several cards. Bob and Alice move the cards in turn. In each turn the...

短发 320

nacos3.1.0适配国产数据库

Nacos 3.1.0适配国产数据库指南 本文介绍了Nacos 3.1.0版本适配达梦数据库和人大金仓数据库的具体步骤。主要内容包括:添加达梦和人大金仓的JDBC驱动依赖,修改nacos-persistence模块的配置文件及相关Java类,以及打包和运行注意事项。文章特别指出3.1.0版本需要JDK17环境,并提供了解决常见问题的建议,如添加VM options配置和不同启动方式等。通过本文的配置指导,可以实现Nacos服务在国产数据库环境下的正常运行。

梦昼初的博客 1462

【GlobalMapper精品教程】073:像素到点(Pixels-to-Points)从无人机图像轻松生成点云

Global Mapper v19引入的新的像素到点工具使用摄影测量原理,从重叠图像生成高密度点云、正射影像及三维模型。它使LiDAR模块成为已经功能很强大的的必备Global Mapper扩展功能。打开GlobalmapperV25.1中文版,点击【Lidar分析】→【像素到点云】,如下所示:V25之前的版本点击工具条上的【像素到点】工具:打开工具,可以【使用向导选】,或者选择【使用主窗口】,都很简单。

智慧空间实验室 1972

hdu3389 Game

Game Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 255 Accepted Submission(s): 174 Problem Description Bob and Alice are playing a new g

习惯与规则决定命运 1196

基于GELAN模块的YOLOv8改进-C2f结构替换与轻量化与高效涨点优化研究

本文详细探讨了在YOLOv8架构中利用YOLOv9的GELAN模块替换C2f结构的改进方法。轻量化版本在资源受限的场景中具有显著的推理效率提升,适用于边缘设备和移动端应用。高效涨点版本则在检测精度上实现了大幅突破,特别适合高精度要求的任务。实验结果显示,GELAN模块相比原C2f模块,在参数量与计算量间取得了更好的平衡,同时提升了检测性能。此外,本文还展示了结构图、训练代码和部署优化方案,为研究者和开发者提供了实践参考。

博客 1435

hdu 3389 Game (阶梯博弈)

Game Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 703    Accepted Submission(s): 495 Problem Description Bob and Alice are playing a

clover_hxy的博客 409

国科大学习资料--机器学习方法与应用(叶齐祥)-期末考试题整理

国科大学习资料–机器学习方法与应用-期末考试题整理 ============================================================================================================================================================================================ =======================================

无名何许人的博客 2852

SAP_MM模块-服务类采购详细讲解案例

SAP_MM模块服务类采购订单配置及业务测试案例详解,包括前台业务操作、后台配置以及使用过程中的问题处理

风沙的博客 5124

我谈阶梯博弈( Staircase Nim )

今天在POJ做了一道博弈题..进而了解到了阶梯博弈...下面阐述一下我对于阶梯博弈的理解..  首先是对阶梯博弈的阐述...博弈在一列阶梯上进行...每个阶梯上放着自然数个点..两个人进行阶梯博弈...每一步则是将一个集体上的若干个点( >=1 )移到前面去..最后没有点可以移动的人输.. 如这就是一个阶梯博弈的初始状态 2 1 3 2 4 ... 只能把后面的点往前面放.

zzyzzy12 9750

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

hdu3389 Game-----博弈想法题 难

Game Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 133    Accepted Submission(s): 90 Problem Description Bob and Alice are playing

Shirley 1829

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

HDU_3389 Game 博弈

http://acm.hdu.edu.cn/showproblem.php?pid=3389 题意: 有N堆石子,每堆石子都有一定的石子数,Alice和Bob轮流玩一个游戏,游戏的规则是,每回合一个人可以选择1-n堆石子中的某一堆进行操作,操作是:假设选择操作的那堆石子的编号为A,现在还要选择一堆石子B,满足B 思路: 这是一个阶梯博弈的题目,首先我们可以发现,只有1 ,3 ,4 三个数是

Chris_Home 867

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

HDU 3389 Game 阶梯博弈

题目大意: 就是现在给出一些盒子依次编号从1到n, 每个盒子中有一定的卡片, 然后每次可以选择将B中任意数量的卡片放进A中, 其中A, B满足 (A + B) % 2 == 1 && (A + B) % 3 == 0, A 轮到谁但是没有可移动的牌那个人就输了, 问谁会获得胜利 大致思路: 首先这个题需要了解一下阶梯博弈: 一个简单的阶梯博弈的模型: 现在有编号1~n的n级阶

Gatevin的专栏 956

HDU 3389 Game(阶梯博弈变形)

原题地址:http://acm.hdu.edu.cn/showproblem.php?pid=3389 题意:编号1-n的盒子,当你的编号满 B&lt;A &amp;&amp; (A+B)%2=1 &amp;&amp; (A+B)%3=0的时候你可以从A中取至少一个石头到B,不能取的人输,问你输赢。 思路:首先要了解一下什么是阶梯博弈,参考链接. 对于一般的阶梯博弈,当到达地面(即0阶)的时候就是...

yiqzq的博客 421

HDU 3389 Game【阶梯博弈】

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3389题意:nn个盒子,编号1−n1-n排列,每个盒子都有若干卡片,每次对于满足B<A,(A+B)%2=1且(A+B)%3=0B<A ,(A+B)\%2=1 且(A+B)\%3=0的两个盒子,可以将AA中任意数目的卡片移到BB中,两人轮流操作,问最后谁无法操作?分析:首先手算一下小数据,我们会发现最终盒子

Tuesday 888

hdu 3389 Game 阶梯博弈

#include #include #include #include #include #include #include using namespace std; #define LL __int64 const int maxn=1010; int main() { int T,tt=0; cin>>T; while(T--) {

冷月之殇 1406

HDU 3389 Game(博弈)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3389 题意:有n堆石子。Alice和Bob轮流玩一个游戏,游戏的规则是,每回合一个人可以选择某一堆进行操作,操作是:假设选择操作的那堆石子的编号为A,现在还要选择一堆石子B,满足B&lt;A &amp;&amp; (A+B)%2==1 &amp;&amp; (A+B)%3==0,然后可以将A中至少一...

weixin_34067980的博客 146

Game HDU - 3389(尼姆博弈)

题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=3389 #include <iostream> #include <cstdio> #include <cstring> #include <cmath> using namespace std; int a[10009]; int main() { ...

呼吸 196

HDU 3389 Game (阶梯博弈)

Game Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 217    Accepted Submission(s): 152 Problem Description Bob and Alice are playing a new g...

weixin_34387284的博客 198

Game HDU - 3389 (阶梯博弈)

题目 https://vjudge.net/problem/HDU-3389 题意 1-N带编号的盒子,当编号满足A>B && A非空 && (A + B) % 3 == 0 && (A + B) % 2 == 1则可以从A中取任意卡片到B中,谁不能取了谁就输。 思路 阶梯博弈 阶梯博弈等效为奇数号阶梯的尼姆博弈。 假设我们是先手...

七九河开的博客 309

[HDU3389]Game(阶梯博弈)

题目描述传送门题解看题目中的两个条件:(A+B)%2=1,(A+B)%3=0(A+B)\%2=1,(A+B)\%3=0,其实可以转化成一个条件:(A+B)%6=3(A+B)\%6=3。 那么这样的话,如果将每一个点的编号写成%6\%6的形式,那么我们发现,1和2可以匹配,3和0可以匹配,4和5可以匹配。同时我们又发现1,3,4这三个点是移动的终点,也就是说不能再向其它的移动,那么我们得出:编号%6

zyf2000 1078

HDU 3389 Game (阶梯博弈)

题意: 给你n个盒子,从1---n,你每次要找出来两个盒子下表分别是a,b;它们要满足(a+b)%2==1 && (a+b)%3==0,找到盒子之后要从b向a中拿过去至少1个卡牌 最多不限(这里b>a的) 阶梯博弈:(尼姆博弈升级) 这种题目就是只能从高出向低处放东西,谁最后一次放到最低处谁就获胜(比如本题就是从下标大的向下标小的位置放卡牌) 解法...

weixin_30487201的博客 136

hdu 3389 Game(阶梯博弈)

http://acm.hdu.edu.cn/showproblem.php?pid=33891 3 4号盒子是最终状态,所有出始状态都会经过若干步操作变成这个最终状态。如果仔细分析,会发现:n % 6 == 0 或 2 或 5的盒子,经过奇数步转移到1 3 4中去,其他的则须经过偶数步才能转移过去。易证:偶数步的不用管,对于奇数步的操作只需转换成Nim博弈,利用异或运算判断是否必胜即可。#inclu

HJ 548

Game HDU - 3389 +(都说这个题是阶梯博弈,什么是阶梯博弈啊?)

题目链接 阶梯博弈的链接 这道题的思路就有点奇怪,可能是我还没有理解; #include<cstdio> #include<cstring> #include<algorithm> using namespace std; const int num=1e5+10; int main() { int t,n,ans,a; scanf("%d",&t)...

地衣的博客——qdu 228
上一篇: HDU 3032 Nim or not Nim?(博弈 sg表)
下一篇: HDU 2149 Public Sale(博弈)
左眼皮跳跳~
博客等级 码龄13年 17粉丝 400原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值