HDU-4111 Alice and Bob(博弈 + 记忆化搜索)

紫光同创PDS软件操作指南:如何为FPGA新增自定义Flash型号 本文详细介绍了在紫光同创PDS软件中为FPGA新增自定义Flash型号的完整操作指南。针对官方支持列表之外的SPI Flash芯片,文章从理解FPGA配置逻辑入手,逐步讲解如何通过扫描Flash ID、在Flash Operator中精准填写参数、转换.sbit文件,最终完成固化的全过程,并分享了高级技巧与常见问题排查方法,帮助工程师摆脱对预设型号的依赖,实现灵活选型。 阅读详情

题意:

给n个数,Alice先手。

操作1:选择任意一个数进行减1操作,减为0时自动消失。

操作2:选择任意两个数进行合并操作,合并后两个数消失,变为它们的和。

思路:

易知必定要进行初始所有数的和个次数,然后会有不定的合并次数,由于都采用最优策略,所以先手对非1的数进行操作,后手必定会破坏其目的,不会损失合并的次数。所有只有数1会对合并次数产生影响。所以其实就可以进行n/p转移了。

所以对于当前状态cnt个1,sum个非1数(包括初始贡献以及合并贡献)。

可以选择合并两个1,形成新的一个非1数,如果sum不为0则贡献3给sum,为0则贡献2给sum。

当sum不为0时,可以选择一个1跟一个非1数合并,则贡献1给sum。

也可以直接对一个1进行减1操作,导致cnt减1,而对sum无贡献。

还可以对非1的sum进行减1操作,如果sum减为1,则贡献1给cnt,而sum减为0。

如果cnt为0,则胜负就取决于sum的奇偶了。

(唉,太菜想不到好办法解决sum减1的操作影响)。

代码:

#include <bits/stdc++.h>
using namespace std;
int ans[55][50005];
int dfs(int cnt, int sum)
{
	if(ans[cnt][sum] != -1) return ans[cnt][sum];
	if(sum == 1) return ans[cnt][sum] = dfs(cnt+1, 0);
	if(cnt == 0) return ans[cnt][sum] = sum & 1;
	if(cnt >= 2 && ((!sum && !dfs(cnt-2, sum+2)) || (sum && !dfs(cnt-2, sum+3))))
	return ans[cnt][sum] = 1;
	if(sum && !dfs(cnt-1, sum+1))
	return ans[cnt][sum] = 1;
	if(!dfs(cnt-1, sum))
	return ans[cnt][sum] = 1;
	if(sum && !dfs(cnt, sum-1))
	return ans[cnt][sum] = 1;
	return ans[cnt][sum] = 0;
}
int main()
{
	memset(ans, -1, sizeof ans);
	int t, n, x, cnt, sum;
	scanf("%d", &t);
	for(int _ = 1; _ <= t; ++_)
	{
		scanf("%d", &n); sum = cnt = 0;
		for(int i = 1; i <= n; ++i)
		{
			scanf("%d", &x);
			if(x == 1) ++cnt;
			else sum += x+1;
		}
		if(sum) --sum;
		printf("Case #%d: ", _);
		if(dfs(cnt, sum)) printf("Alice\n");
        else printf("Bob\n");
	}
	return 0;
} 


继续加油~

【商业化】【msix打包】Python 应用打包为 MSIX 的正确流程:入口点问题与解决方案 发现用msix打包工具打包python做的exe时总找不到程序入口点,后来理了一下才发现自己误会了,需要先生成一个基本的setup.exe,msix的打包是基于这个初始的安装程序进行的。只需要点击Buile-》Compile,然后Open Output Folder就可以得到exe安装程序了。可以使用免费工具inno setup来创建初始安装包。其中{group}这样的变量会自动匹配,不用自己指定。如果点击Run会运行安装程序。 阅读详情

相关推荐

01-SA8155 QNX 虚拟机Hypervisor

Hypervisor运行在Host OS操作系统上,其他操作系统均在Hypervisor上运行。:Hypervisor直接运行在硬件上,操作系统在Hypervisor之上运行。终止(关闭):echo control 0 dev/vmm。路径:qnx_ap/AMSS/platform/vm/resources/关闭/终止 qvm(GVM):slay -s SIGQUIT qvm。", //host PVM --- 主机。不直接操作/dev/vmm 实现关闭,启动vm。

静虚待令,有物混成 1万+

hdu 4111 Alice and Bob(博弈)

题目链接:hdu 4111 Alice and Bob 题目大意;Alice和Bob两个玩游戏,有N堆石子,每次可以从一堆中取走一个石子,或者是合并两堆石子,Alice先,问 说最后谁赢。 解题思路:NP定理,写出一些NP定理找到规律,再用归纳的方法证明。 统计1的个数c,以及非1情况下的步数s,包括合并。 c为奇数,s不等于2:那么先手必胜。s为2或者为0:c为

不慌不忙、不急不躁 1785

手把手教你理解瑞萨RH850芯片的HSM:从硬件隔离到软件中断通信

本文深入解析瑞萨RH850芯片的HSM架构,从硬件隔离到软件中断通信的完整实现。通过详细讲解HSM的硬件组件、启动流程、核间通信机制及安全服务实现,帮助开发者掌握芯片级安全技术,提升汽车电子和工业控制领域的安全防护能力。

weixin_33925615的博客 380

hdu-4111-Alice and Bob

题意:n堆不同数量的石头 A,B两人可进行如下两种操作 1. 拿走其中一堆的其中一个石头 2.合并任意两堆石头 A先,直达轮到某人事,他无法进行任何操作,结束,并判该人输。 题解: 无论石头怎么堆, 操作次数的奇偶性确定,即可知道比赛结果。 但是, 如果某堆石头只要一个,那么拿走他的同时, 合并的操作数也会减少一次,结果反转。 但是可以推出,如果只有一个堆石子数是1, 那么该状态是必

u010724594的专栏 840

ethercat linux lan9252 - lan9253调试

linux 的ethercat测试

linsheng_111的专栏 1934

Matlab实战:水声信号DEMON谱分析从入门到精通(附完整源码)

本文详细介绍了使用Matlab进行水声信号DEMON谱分析的完整流程,从基础理论到实战应用,涵盖信号预处理、包络提取、频谱分析等关键步骤,并附完整源码。特别针对水声通信中的低信噪比环境,提供了多种优化方案和性能提升技巧,帮助读者快速掌握这一水下目标检测的核心技术。

gamma的博客 296

HDU 4111 Alice and Bob 【博弈】

传送门:HDU 4111 Alice and Bob Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Problem Description Alice and Bob are very smart guys and they like to play all kinds...

Waiting For You 370

智能车竞赛走马观碑组:如何高效识别目标板并优化绕行策略(附实战代码)

本文深入探讨了智能车竞赛走马观碑组中,如何构建从图像识别到路径决策的全栈优化方案。针对目标板识别与绕行策略的核心难点,文章详细解析了基于MobileNetV2的高效识别流水线、结合预瞄点与纯追踪算法的平滑路径规划,以及横向与纵向协同控制策略,并提供了实战代码与调试指南,旨在全面提升小车的比赛表现。

o5p6q的博客 884

hdu4111 成都现场赛A题

/* 题意:有N堆石子,每堆石子有一个数目,现有两个人博弈,每个人每次可以进行两个操作中的一个: 1、从某堆拿掉一个石子(若某堆石子为0了,那么这堆就不存在了);2、合并两堆石子 没有操作的就输。问是哪个赢 思想:如果每堆石子数都大于1,那么最后结果肯定相当于所有的堆合并成一堆后,然后再一个一个拿掉的结果。 因为如果那种情况是赢的人一定会不断合并堆来确保他是赢的。又因为所有堆的石子数都大

qjklw 4898

ESP32S3接入讯飞在线语音识别教程及配套源代码

本文介绍了如何使用ESP32-S3开发板实现讯飞在线语音识别功能。首先,需要准备硬件设备,包括ESP32-S3开发板、麦克风模块、MicroSD卡模块和扬声器模块。接着,安装Arduino IDE并配置ESP32-S3开发环境,注册讯飞开放平台账号并获取API凭证。然后,通过I2S接口连接麦克风模块,并编写代码实现语音录制、Base64编码、API请求和识别结果处理。代码包括初始化WiFi、麦克风、系统时间,以及录制语音、发送请求、解析响应等功能。最后,通过按键触发录音,并将识别结果输出到串口。

2401_88800025的博客 747

【AI 智能体】Windows 环境 Hermes Agent(爱马仕)安装详细过程

Windows 环境 Hermes Agent(爱马仕)安装详细过程

congge_study的博客 1830

解题报告:HDU 4111 Alice and Bob 递推|博弈

题目链接 题意: 现在有n堆石子,每堆石子分别有A1,A2,A3...An个 现在有两种操作: 1.选一堆非空石子将其数量减一 2.合并两个非空石子 Alice 和 Bob 轮流进行操作,先取完的获胜,Alice先操作,问谁能获胜 思路: 首先需要发现几个性质: 1.所有给出的数据都可以转换成 (A,X)的状态。 A为石子数量为1的石子堆数目,X为其余 所有非1的

Hee的博客~ 591

YOLOv11低照度增强主干网络PE-YOLO:原理与完整实现教程

编码器部分# 解码器部分self.dec_conv2 = nn.Conv2d(512, 128, 3, padding=1) # 跳跃连接self.dec_conv3 = nn.Conv2d(256, 64, 3, padding=1) # 跳跃连接self.dec_conv4 = nn.Conv2d(128, 32, 3, padding=1) # 跳跃连接# 编码路径# 解码路径(带跳跃连接)

FJN110的博客 727

Hdu 4111 Alice and Bob(博弈+记忆化搜索)

题目链接 Alice and Bob Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 1587    Accepted Submission(s): 575 Problem Description Alice and

madaidao的专栏 513

SAP B1中文培訓教材_SDK

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

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

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

hdu 4111 Alice and Bob 记忆化搜索 博弈论

Alice and Bob Time Limit: 20 Sec  Memory Limit: 256 MB 题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=4111 Description Alice and Bob are very smart guys and they like to play all kinds of g...

weixin_34110749的博客 173

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

hdu4111 Alice and Bob---sg dp记忆化求sg

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

Shirley 1625

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

HDU 4111 Alice and Bob (博弈)11年成都现场赛

转载请注明出处,谢谢 http://blog.youkuaiyun.com/ACM_cxlove?viewmode=contents           by---cxlove 可惜没有机会去现场做,不过当时肯定是不会。 题意:有N堆石头,可以把两堆合成一堆,也可以把一堆去掉一个。 由于总数不变,最终总是要一个个拿完。那么有机会获胜的一方,肯定是先要把所有的合在一起,那么最终就拼奇偶数了。所以双方都

窝不是爱酱,喵~~~~ 6732

Alice and Bob HDU - 4111(SG函数,NP定理)

Alice and Bob are very smart guys and they like to play all kinds of games in their spare time. The most amazing thing is that they always find the best strategy, and that’s why they feel bored again ...

tomjobs的博客 516

HDU 4111Alice and Bob(博弈+记忆化)

题意:有n堆石子,一次可以拿走一个石子,或者把一堆石子放在另一个石子上。不能再次操作的人输Alice先拿。问谁赢 思路:当石子个数大于1时,可以把他们放到一堆里+1次的操作数。石子数为1时,单独考虑。 设所有只有一个石子的是A堆,其他的石子可以合并的设为B堆。 每一次操作有: 1、把A堆 的两个石子合并。加入到B堆。 2、把B堆的石子减1 3、把A堆的一个石子加入的B堆 4、把A堆的

binwin20 2120

HDU 4111--Alice and Bob

来源:http://acm.hdu.edu.cn/showproblem.php?pid=4111 题意:有n堆石子,Alice和bob轮流进行游戏,游戏有两种操作:1、从其中一堆拿走一个石子,2、选两堆石子合并。每人每次只能选两种操作中的一种,谁拿到最后一个石子谁赢。 分析:由于总数不变,最终总是要一个个拿完。那么有机会获胜的一方,肯定是先要把所有的合在一起,那么最终就拼奇偶数了。所以双方都

Xcockroach的专栏 612

HDU 4111 Alice and Bob

题目链接:http://acm.split.hdu.edu.cn/showproblem.php?pid=4111 题意:有n堆石子,每堆有ai个,现在可以选择一堆拿走一个,或者合并两堆。问谁能赢。 思路: 如果全部的堆数都大于1,那么一定是把石子全部合并后一个个取走,因为输的人没法一次取走一堆,而赢的人每次把最少的合并起来。 dp[i][j]表示有i堆为1的石子,j是

DS-K的博客 503

HDU 4111 Alice and Bob (博弈[记忆话搜索])

题意: 给你n 堆石子,两种操作: 1. 任选一堆石子, 数目减一, 如果为0 删除这一堆。 2. 任选两堆石子进行合并。 最后不能操作的人输掉。 问谁能赢? 思路: 记忆话搜索博弈,第一次见到。 状态找的比较巧妙把。 把所有的石子堆数分成两类。 数量为1, 数量为2, 和数量大于等于3的奇数,和数量大于等于4的偶数。 因为大于等于3 的奇数,你取一步 他取一步 ,效

aozil_yang的博客 420

hdu 4111 Alice and Bob(中档博弈题)★ ★

1.每堆部是1的时候,是3的倍数时输否则赢; 2.只有一堆2其他全是1的时候,1的堆数是3的倍数时输否则赢; 3.其他情况下,计算出总和+堆数-1,若为偶数,且1的堆数是偶数,则一定输; 4.不在上述情况下则赢。 #include int main() { int js=0; int _case,i,n,x; int flag1,flag2,flag,sum;

Ezereal的博客 512

hdu 4111 Alice and Bob(中档博弈题)

copy VS study 1.每堆部是1的时候,是3的倍数时输否则赢; 2.只有一堆2其他全是1的时候,1的堆数是3的倍数时输否则赢; 3.其他情况下,计算出总和+堆数-1,若为偶数,且1的堆数是偶数,则一定输; 4.不在上述情况下则赢。 #include<stdio.h> int main() { int js=0; int _case,i,n...

weixin_34259559的博客 202

【DP】hdu4111

题意:有N堆石子,每堆石子有一个数目,现有两个人博弈,每个人每次可以进行两个操作中的一个: 1、从某堆拿掉一个石子(若某堆石子为0了,那么这堆就不存在了);2、合并两堆石子 没有操作的就输。问是哪个赢 难点:1.想到如果多个堆多于1那么胜利的一方一定会想尽办法合并,又因为每堆都多余1所以无法阻止合并             2.如果有一就单独考虑 所以解法就是用f[i][

Pro_space的专栏 603

HDU 4111 Alice and Bob 博弈论

题目链接:HDU4111 Alice and Bob Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 2098    Accepted Submission(s): 787 Problem Descriptio

teddywang 545
上一篇: HDU-3723 Delta Wave(卡特兰数+大数递推)
下一篇: Codeforces Round #453 (Div. 2)...
薄层
博客等级 码龄10年 242粉丝 289原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值