HDU 3032 - Nim or not Nim?(SG)

ADRC学习与参数整定心得 ADRC,中文名是自抗扰控制技术。继承了经典PID控制器的精华,对被控对象的数学模型几乎没有任何要求,又在其基础上引入了基于现代控制理论的状态观测器技术,将抗干扰技术融入到了传统PID控制当中去,最终设计出了适合在工程实践中广泛应用的全新控制器。 1. ADRC介绍 ADRC主要跟踪微分器,非线性状态反馈(非线性组合),扩张观测器(ESO)三部分组成。 2. 跟踪微分器TD 2.1 作用 2.2 表达式 2.3 参数含义及作用 2.4 代码实现 2. 跟踪微分器TD 2.1 作用 最速跟踪微分器的作用是 阅读详情

Nim or not Nim?

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


Problem Description
Nim is a two-player mathematic game of strategy in which players take turns removing objects from distinct heaps. On each turn, a player must remove at least one object, and may remove any number of objects provided they all come from the same heap.

Nim is usually played as a misere game, in which the player to take the last object loses. Nim can also be played as a normal play game, which means that the person who makes the last move (i.e., who takes the last object) wins. This is called normal play because most games follow this convention, even though Nim usually does not.

Alice and Bob is tired of playing Nim under the standard rule, so they make a difference by also allowing the player to separate one of the heaps into two smaller ones. That is, each turn the player may either remove any number of objects from a heap or separate a heap into two smaller ones, and the one who takes the last object wins.
 

Input
Input contains multiple test cases. The first line is an integer 1 ≤ T ≤ 100, the number of test cases. Each case begins with an integer N, indicating the number of the heaps, the next line contains N integers s[0], s[1], ...., s[N-1], representing heaps with s[0], s[1], ..., s[N-1] objects respectively.(1 ≤ N ≤ 10^6, 1 ≤ S[i] ≤ 2^31 - 1)
 

Output
For each test case, output a line which contains either "Alice" or "Bob", which is the winner of this game. Alice will play first. You may asume they never make mistakes.
 

Sample Input
2 3 2 2 3 2 3 3
 

Sample Output
Alice Bob
 


============================


SG打表

分堆处理:

 for(int i=1;i<=x/2;i++)  
    {  
        int ans=0;  
        ans^=dfs(i);  
        ans^=dfs(x-i);  
        visit[ans]=1;  
    } 


x -------- 0 1 2 3 4 5 6 7 8

g(x) ---- 0 1 2 4 3 5 6 8 7


#include <iostream>
#include <cstdio>

using namespace std;

int main()
{
    int t,n,s;
    scanf("%d",&t);
    while(t--)
    {
        int ans=0;
        scanf("%d",&n);
        for(int i=0;i<n;i++)
        {
            scanf("%d",&s);
            if(s%4==1||s%4==2)
            {
                ans^=s;
            }
            else
            if(s%4==3)
            {
                ans^=(s+1);
            }
            else
            {
                ans^=(s-1);
            }
        }
        if(ans)
            puts("Alice");
        else
            puts("Bob");
    }
    return 0;
}


TC3XX - MCAL知识点(三十三):基于EB Tresos配置Tc3xx的MCAL代码如何产生中心对称的三相六路发波波形 本文用于记录如何在英飞凌 tc3xx 芯片的应用开发中,借助 EB Tresos 配置工具生成的配置代码与 MCAL 源码相结合,进而实现三相六路中心对称互补的 PWM 输出效果。外部资源需求:EB Tresos23.0以上、Tasking\Hightec编译器、示波器\逻辑分析仪。 阅读详情

相关推荐

实测对比:Gromacs GPU版vsCPU版性能差异到底有多大?2023最新基准测试

本文通过2023年最新基准测试,详细对比了Gromacs GPU版与CPU版的性能差异。测试显示,GPU版本在计算速度上可提升54倍,同时显著降低内存需求和能耗成本。文章还提供了GPU版安装优化实践和硬件选购指南,为计算生物学研究提供关键参考。

weixin_29243063的博客 334

(HDU - 3032)Nim or not Nim?(尼姆博弈变形)

题目链接:Nim or not Nim? - HDU 3032 - Virtual Judge (ppsucxtt.cn) 题目大意:给你n堆石子,两个人轮流进行操作,每次可以从任意一堆中取走任意数量的石子,也可以将一堆石子分成两堆,最后无法操作者输。 这一看就是一个尼姆博弈的变形题目,尝试过后发现这道题目无法利用尼姆博弈本身的一些结论,我们只能利用sg函数进行求解,在求解sg函数时与尼姆博弈中求解sg函数过程差不多,就是多了一个分解操作,对于有n个石子的一堆石子,如果是一般的尼姆博弈的话,他的后继状态

AC__dream的博客 320

scannet数据集下载文件

scannet数据集下载文件 由于大家会申请scannet数据集,审批比较慢,我将下载的文件里面的内容贴出来,大家可以复制放进py文件中,运行就可以下载 ps:别再私信要数据集了,这个自己下载,如果光三维数据的话,还是很快的,当然如果路由器翻了墙的话,下载会更快。 #!/usr/bin/env python # Downloads ScanNet public data release # Run with ./download-scannet.py (or python download-scannet.

weixin_40766438的博客 9233

ADRC学习笔记(二)

1.最速跟踪微分器TD 它的离散表达式为: 参数中:V(t)是目标值h、h0为积分步长,一般来说h可以等于h0,但是为了减少超调和减少震荡,才把他们分开,一般h0比h大,比如大20倍。当h0较大时,能够明显减少震荡,所以也叫滤波因子。减小h可以抑制噪声放大作用。r为速度因子,值越大,逼近速度越快,但是最好根据实际被控对象的可承受能力而定。 表达式中:其中fhan函数第一种表达式为: fhan函...

weixin_38291293的博客 1万+

国际参考电离层2020模型Matlab(IRI-2020)

国际参考电离层 (IRI) 是一个国际项目 由空间研究委员会 (COSPAR) 和国际 无线电科学联盟 (URSI)。这些组织组成了一个工作组 (在 60 年代后期产生了电离层的经验标准模型, 基于所有可用数据源 (几个稳步改进的版本 模型已经发布。电子密度、电子温度、离子温度、 离子组成(O+、H+、He+、N+、NO+、O+2、簇离子)、赤道垂直离子漂移、垂直电离层电子含量(vTEC;

weixin_44392003的博客 4882

Allegro层叠中的Etch Factor-铜皮的腐蚀因子如何计算

在用Allegro进行PCB设计的时候,Cross-section中需要填入对应的信息,一般填入每层的厚度即可,如下图。当PCB需要进行仿真分析的时候,Etch-Factor这个值是必须要填写的,如下图。实际铜皮进行蚀刻的时候,Etch-Factor的值并不是标准的90度,如下图。线路层实际形状是个梯形,Etch-Factor代表的就是梯形的角度,如下图。首先输入数值,比如1,再点击Inv,最后点击tan-1,可以得到角度的值。如果tanσ=2,σ=63.4,如下图计算结果。即tanσ=1,得到σ=45。

weixin_54787054的博客 885

HDU-3032--Nim or not Nim?(博弈+SG打表)

题目分析: 这是一个经典的Multi-SG游戏的问题。 相较于普通的Nim游戏,该游戏仅仅是多了拆成两堆这样的一个状态。即多了一个SG(x+y)的过程。 而根据SG定理,SG(x+y)这个游戏的结果可以拆成SG(x)和 SG(y)游戏的结果的xor。 因此,在我们求SG函数的过程中,我们只需要再枚举一下拆成两堆的状态,即可获得Multi-SG游戏每个状态的SG函数。 但是题目中的数据范围较大(达...

橘嘉禾 100

基于 STM32 的智能水表流量计设计与实现 —— 数据采集与远程传输

本文设计的基于 STM32 的智能水表流量计通过霍尔传感器实现流量采集,结合 STM32 的处理能力完成数据计算、存储与远程传输,具备计量精准、功耗低、可远程监控等特点。未来可优化方向:引入低功耗模式延长电池寿命,增加水质检测模块实现多参数监测,提升水务管理智能化水平。

weixin_42300449的博客 1028

matlab常用函数

matlab常用函数数据统计函数当参数为向量时(1)y=max(X)(2)[y,k]=max(X)当参数为矩阵时,函数有三种调用格式:(1)max(A)(2)[Y,U]=max(A)(3)max(A,[],dim)(4) max(A(:))求矩阵的平均值和中值mean():求算术平均值。median():求中值。求和与求积sum():求和函数。prod():求积函数cumsum():累加和函数cumprod():累乘积函数标准差(1)std(X)(2)std(A)(3)std(A,flag,dim)相关系数

pythonsnail的博客 4287

基于DFT的滤波系列:加窗滤波的 Matlab 实现

在实际应用中,你可以尝试不同类型的窗函数(如汉宁窗、汉明窗等)以及不同的滤波参数来获得所需的滤波效果。此外,还可以进一步了解 DFT 和窗函数的原理,以及其他数字信号处理技术的应用。加窗滤波是一种常用的数字信号处理技术,它通过在频域上应用窗函数来改善信号的频谱特性。我们通过定义输入信号、应用窗函数、进行 DFT 和逆 DFT,实现了滤波过程,并通过绘图进行了可视化。在频域上进行加窗滤波的关键是将窗函数应用于 DFT 的结果。首先,我们需要定义一个输入信号,这里我们使用一个简单的正弦波作为示例。

m0_47037246的博客 463

【生产实践】PostgreSQL高可用Patroni安装(超详细已踩坑)

一 安装Patroni 0 Patroni 对Python的版本要求 我安装的是Patroni最新版本 :4.0.3,Patroni 对Python 版本有要求,没有具体的版本矩阵,但是根据每个版本发布信息可以得到以下信息 Patroni 4.0 需要 Python 3.8 以上(可以根据下面发布版本信息推理出) Version 3.0.2 Version 3.0.2 dropped support of Python older than 3.6. 版本3.0.2不再支持3.6版本以下的P

DBA之路的博客 1741

HDU 3032 Nim or not Nim?(sg函数博弈)

题目地址:HDU 3032 这题是很好用来练习sg函数打表的一题。 下面是sg函数值打表代码: #include #include #include #include #include #include #include #include #include #include #include using namespace std; #define LL long l

scf0920 1332

yolov26改进 | Neck/颈部创新篇 | 独创HFPN利用分层特征融合块HFFB模块融合多层次特征改进yolov26(全网独家创新)

本文提出了一种创新的分层特征融合模块HFFB(Hierarchical Feature Fusion Block)来改进YOLOv26的neck部分,构建了名为HFPN的新型特征金字塔网络。该模块通过三分支结构融合局部特征(CNN提取)、全局特征(Swin Transformer提取)和中间特征,并包含空间注意力(SA)、通道注意力(CA)和残差反向MLP(IRMLP)等组件来优化特征融合效果。实验表明,该方法能针对不同尺度目标(大/中/小)进行自适应检测,可根据具体数据集需求选择不同配置。文章详细提供了核

Snu77的博客 485

HDU-3032Nim or not Nim?(SG打表)

题目传送门 Nim or not Nim? 题目大意 Alice和Bob做游戏,共有n堆石子,没堆石子为s[i]s[i]s[i]个,每一次可以从任意一堆中拿走任意个石子,也可以将一堆石子分为两个小堆。先拿完者获胜。 Alice先手 思路 用SG打表后 发现规律是 x=x−1 when (x%4==0)x=x-1\ when\ (x\%4==0)x=x−1 when (x%4==0) x=x+1 when (x%4==3)x=x+1\ when\ (

Kuricip的博客 206

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

HDU 3032 Nim or not Nim?(SG函数打表找规律)

Nim or not Nim? Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 2802    Accepted Submission(s): 1450   Problem Description Nim is a two-play...

shyoldman的博客 312

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

hdu3032 Nim or not Nim?(SG函数)

Nim or not Nim? Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 1710    Accepted Submission(s): 845 Problem Description Nim is a two-

随心丶而遇的博客 801

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

HDU 3032-Nim or not Nim?(sg函数打表)

Nim or not Nim? Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 1099    Accepted Submission(s): 547 Problem Description Nim is a tw

Rocky0429 1614

HDU 3032 Nim or not Nim?(SG函数)

Nim or not Nim?Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 2564    Accepted Submission(s): 1335Problem DescriptionNim is a two-player mathem...

albertluf的博客 307

HDU3032 Nim or not Nim?(SG函数)

链接:http://acm.hdu.edu.cn/showproblem.php?pid=3032题意:n堆石子,每次可以从任意一堆中取走 若干个或者把一堆石子分成两小堆,拿到最后一个石子的获胜。问先手赢还是后手赢。思路:标题大坑,按照nim博弈的思路想了好久,最后发现根本不是nim博弈,,,打表跑出前一百个sg值之后发现了规律,如果一堆的石子数x对4取模得0,就亦或x-1;如果x对4取模得3,就亦

hcx11333的博客 296

hdu 3032 Nim or not Nim?(博弈 SG)

Nim is a two-player mathematic game of strategy in which players take turns removing objects from distinct heaps. On each turn, a player must remove at least one object, and may remove any number of o...

ling_wang的博客 290

hdu 3032 Nim or not Nim?(打表 sg函数)

Nim or not Nim? Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 623    Accepted Submission(s): 288 Problem Description Nim is a

Dizzy的专栏 354

HDU 3032 Nim or not Nim?(博弈 SG打表找规律)

博弈SG函数 + 打表找规律

代码改变世界 1422

Nim or not Nim?(hdu3032+SG函数)取走-分割游戏,经典

Nim or not Nim? Description Nim is a two-player mathematic game of strategy in which players take turns removing objects from distinct heaps. On each turn, a player must remove at least one object, and may remove any number of objects provided they all com

寻找&星空の孩子 1732

hdu_oj3032Nim or not Nim?(Nim博弈变型+Mulit-SG)

这道题目很像Nim博弈,但是他与经典的Nim博弈相比,多了一个可以把任意一堆分成两堆的操作,然后问题似乎一下子就变得复杂没有思路起来了,既然想不出思路,又没有经典模型可以套用,那么我们就暴力一点,尝试用SG函数来打表,SG函数就可以解决几乎所有组合博弈的问题,那么我们试着分析一下相比于经典的Nim博弈新加的一种操作,就是将任意一堆分成两堆的操作,用SG函数来表示就是SG(X)=SG(X1+X2),而SG(X1+X2)可以用SG(X1)^SG(X2)解决,那么问题就迎刃而解了,直接枚举所有的状态,最后异...

_C9的博客 142

HDU 3032 Nim or not Nim?(博弈 sg表)

Nim or not Nim? Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 1326    Accepted Submission(s): 656 Problem Description Nim is a two-pl

左眼皮跳跳 381

HDU 3032 Nim or not Nim?(博弈,SG打表找规律)

Nim or not Nim? Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 613    Accepted Submission(s): 282 Problem Description Nim is a two-player ma...

weixin_33853827的博客 114
上一篇: HDU 1538 - A Puzzle for Pirates(海盗分金)
下一篇: HDU 1848 - Fibonacci again and again(SG)
coco430
博客等级 码龄14年 9粉丝 107原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值