[BZOJ3576][Hnoi2014]江南乐(博弈)

YOLOv11野生动物追踪与栖息地分析系统实战指南 目标检测是计算机视觉领域的核心任务之一,其目标是在图像或视频中定位并分类物体。YOLO系列作为单阶段检测的代表,凭借一次回归直接输出结果的特性,实现了实时检测与精度的平衡。YOLOv11在此基础上引入Transformer全局建模能力,进一步强化复杂场景下的特征提取。在野生动物监测场景中,模型需要应对光照变化、遮挡、小目标等挑战,结合分层系统架构实现数据采集、传输、处理与应用的全流程管理。从数据标注格式转换、数据集划分到模型训练与部署,一套完整的工程流程是技术落地的关键。以YOLOv11在野生动物追踪与栖息 阅读详情

=== ===

这里放传送门

=== ===

题解

这题对于SG函数的递推非常好想,因为对于有x个石子的一堆来说,选定一个m以后分成的m堆一定要么是 ⌊xm⌋ 个,要么是 ⌊xm⌋+1 个,因为把除以m以后的那些余数一堆一个就能满足要求了。因为后继状态是每个石子堆的异或值,所以只要算一下两种石子堆的奇偶性然后用记忆化搜索得到后继SG值就可以了。

但是如果每次都暴力枚举m的话时间复杂度是 O(n2) 级别的。考虑优化,因为它有一个下取整除法的操作,可以考虑利用分块枚举除法的做法。设当前数字为x,除以m的商为u,余数为r,那么值为 ⌊xm⌋+1 的就有r堆,剩下的m-r堆都是 ⌊xm⌋ 的。列几个数就可以发现,如果当前这一段区间长度大于2,那么随着除数m每次加一,余数的变化是每次减少u直到减少到0的。

而因为要考察r和m-r的奇偶性,所以可以对u分奇偶讨论。当u是奇数的时候,r的奇偶性每次都会改变,但m因为是每次加一,所以它的奇偶性也会每次改变,也就是说m-r的奇偶性是不变的,那么 ⌊xm⌋ 的那些堆到底有没有影响就是确定的了,直接计算就可以。这里的“有影响”是说它有奇数堆,不会在异或操作中被消掉。

而因为区间长度是大于2的,所以状态一定会改变至少一次,也就是说 ⌊xm⌋+1 的那些堆有影响和无影响的状态肯定都存在于这一块里面,加进去就可以了。同样,当u是偶数的时候,r的奇偶性是不变的,也就是 ⌊xm⌋+1 的那些堆状态是确定的,再把 ⌊xm⌋ 的那些堆有影响和无影响的状态都加进去就可以了。时间复杂度是 O(nn√) 的。这里用记忆化搜索比预处理要快很多,因为实际上用到的状态很少。

代码

#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
int T,F,n,sum,sg[100010];
int get_sg(int u){
    int res,k,tail,now;
    if (sg[u]!=-1) return sg[u];
    bool ext[10010];
    memset(ext,false,sizeof(ext));
    for (int i=2;i<=u;i=tail+1){
        tail=min(u/(u/i),u);
        now=0;
        res=u/i;k=u%i;
        if (tail-i+1<2){
            if (k&1) now^=get_sg(res+1);
            if ((i-k)&1) now^=get_sg(res);
            ext[now]=true;
        }else
          if (res&1){
              if ((i-k)&1) now^=get_sg(res);
              ext[now]=true;
              now^=get_sg(res+1);
              ext[now]=true;
          }else{
              if (k&1) now^=get_sg(res+1);
              ext[now]=true;
              now^=get_sg(res);
              ext[now]=true;
          }
    }
    for (int i=0;;i++)
      if (ext[i]==false){
          sg[u]=i;break;
      }
    return sg[u];
}
int main()
{
    memset(sg,-1,sizeof(sg));
    scanf("%d%d",&T,&F);
    for (int i=0;i<F;i++) sg[i]=0;
    for (int wer=1;wer<=T;wer++){
        scanf("%d",&n);sum=0;
        for (int i=1;i<=n;i++){
            int x;scanf("%d",&x);
            sum^=get_sg(x);
        }
        if (sum==0) printf("0");
        else printf("1");
        if (wer==T) printf("\n");
        else printf(" ");
    }
    return 0;
}
3、提升管壳式换热器能效:双螺旋盘管的应用研究 本研究探讨了在管壳式热交换器中应用双螺旋盘管以提升能效的可行性。通过实验对比双螺旋与单螺旋盘管的热传递效率,结果显示双螺旋盘管达到54.33%的效率,显著优于单螺旋的48.88%。双螺旋结构不仅增大了换热面积,还因产生剪切应力而减少结垢,延长运行周期。采用NTU方法评估热传递性能,验证了该设计在工业应用中的高效性与实用性,建议在制冷、空调、石油精炼等领域推广使用。 阅读详情

相关推荐

[LaTeX] 调整参考文献的格式(References),包括作者名缩写,行距,字体,引用顺序等等

在此记录我对LaTeX中参考文献references的尝试,主要涵盖如题几个方面。

the Blog of 等不到天亮丶等时光 4万+

P3235 [HNOI2014]江南乐

原题网址P3235 [HNOI2014]江南乐 展开 题目描述 小A是一个名副其实的狂热的回合制游戏玩家。在获得了许多回合制游戏的世界级奖项之后,小A有一天突然想起了他小时候在江南玩过的一个回合制游戏。 游戏的规则是这样的,首先给定一个数F,然后游戏系统会产生T组游戏。每一组游戏包含N堆石子,小A和他的对手轮流操作。每次操作时,操作者先选定一个不小于2的正整数M (M是操作者自行选定的,而且每次操作时可不一样),然后将任意一堆数量不小于F的石子分成M堆,并且满足这M堆石子中石子数最多的一堆至多比石子数最少的

YSJ的博客 418

基于STM32的HC-SR04超声波模块测距(新手级)

本人是嵌入式新手,学习了STM32的部分内容,最近想找些项目做,然后顺便学习了一下HC-SR04超声波模块,学习过程中也参考了一些大佬的文章。本文记录了自己的学习方法和学习过程,同时也希望能和各位大佬交流讨论。

weixin_63758495的博客 2206

HNOI 2014 Day2 江南乐

第 3 题:江南乐(game),运行时限 3s,内存上限 512M 【问题描述】 小 A 是一个名副其实的狂热的回合制游戏玩家。在获得了许多回合制游戏的世界级奖项 之后,小 A 有一天突然想起了他小时候在江南玩过的一个回合制游戏。 游戏的规则是这样的,首先给定一个数 F,然后游戏系统会产生 T 组游戏。每一组游戏包 含 N 堆石子,小 A 和他的对手轮流操作。每次操作时,操作者先选定一个

Gromah 3020

Python+Appium实现泛微OA自动打卡:5分钟搭建移动端自动化脚本

移动端自动化测试是软件测试与办公自动化领域的重要技术方向,其核心原理是通过程序模拟用户对手机应用界面的操作,实现重复性任务的自动执行。Appium作为主流的开源移动端自动化框架,基于WebDriver协议,支持跨平台且无需修改被测应用,为自动化脚本开发提供了标准化接口。在工程实践中,结合Python简洁的语法和丰富的生态,可以快速构建稳定可靠的自动化解决方案。这一技术组合的价值在于能够高效处理“重复性、低价值、高频率”的日常操作,例如考勤打卡、数据填报等办公场景,显著提升工作效率。本文以泛微OA Emobi

weixin_28836875的博客 390

STM32 伺服电机 指令脉冲+方向位置控制模式 主从定时器 实现PWM脉冲数精确控制

实验室有个项目涉及到多个步进电机以及伺服电机的控制,需要电机得到一个触发信号后精确移动一段距离。 下面以单个伺服电机控制为例,利用伺服电机的指令脉冲加方向位置控制模式实现jing'que ...

phcdd的博客 2万+

bzoj3576: [Hnoi2014]江南乐

传送门:http://www.lydsy.com:808/JudgeOnline/problem.php?id=3576 思路:每堆石子都构成一个独立的游戏,所以SG[x]就表示只有一堆数量为x的石子的游戏的SG值,显然当x<F时,SG[x]=0。 然后我们枚举每种分法,可以得到所有的SG值。但是这是O(n^2),TLE.... 为了降低复杂度,我们发现了一个很神奇的性质 n...

weixin_30597269的博客 164

Frigate进阶玩法:如何用MQTT和Python脚本扩展你的自定义目标检测算法

本文详细介绍了如何通过MQTT和Python脚本扩展Frigate的自定义目标检测算法,无需修改源码即可实现特殊场景(如工业设备异常、农业病虫害识别)的高效检测。文章涵盖Frigate配置、外部检测服务构建、高级集成技巧及性能优化实践,帮助开发者灵活扩展智能监控能力。

weixin_42662293的博客 350

BZOJ 3576: [Hnoi2014]江南乐

首先把游戏拆解一下会发现每一堆石子是一个游戏 所以是Multi-SG,总体sg值是每个游戏的sg值的异或和 考虑单个游戏,数量为n的一堆石子的后继状态是拆完之后的石子的sg值的异或和 于是结合SG定理就得到了一个优秀的m^2算法(优秀个毛线啊)(m为石子个数的最大值) 然后我们考虑一个比较特殊的情况 显然把n拆成m堆会出现k=n/m和k+1两种情况,堆数分别是k1=m-k2,k2=n%m

月下沙茶树 852

ESD放电模式以及电源箝位 (power clamp )电路

由于ESD电压具有很快的上升速度(其ESD脉冲上升时间约在10ns左右),Vrc端的电压因为RC延迟效应无法跟得上VDD端的ESD电压上升速度,Vrc端的为低电位导致反相器工由于ESD电压具有很快的上升速度(其ESD脉冲上升时间约在10ns左右),Vrc端的电压因为RC延迟效应无法跟得上VDD端的ESD电压上升速度,Vrc端的为低电位导致反相器工作将输出端Vout电压上拉到高电位。从而Vg端的高电位触发导通了NMOS元件(Mesd)的晶体管,因而ESD电流便经由Mesd而泄放掉。由于晶体管Mesd的栅极导通

DOG_BITE_DOG的博客 2万+

【FnOS飞牛云 | NAS存储】旧电脑不吃灰,手把手教你搭建完全属于自己的私人网盘

打造属于自己的NAS私人网盘,亲测有效,值得一试

木子Linux的博客世界 9419

【BZOJ 3576】 [Hnoi2014]江南乐

博弈论+优化~ (详细题解)

Regina8023 2035

联想开天N70z/N79Z G1d笔记本Win驱动下载

本文介绍了联想开天N70Z/N79Z G1d笔记本在Win11系统下的驱动安装方法。提供了WiFi网卡驱动(RealtekWlan)和显卡驱动(ZX C960 GPU)的详细安装步骤,包括手动更新驱动和卸载流程。驱动安装后成功支持5G WiFi连接并正确识别显卡型号。文中附有系统信息和安装效果截图,同时提供了官方驱动下载地址及备用下载链接。该指南适用于需要为联想开天N70Z/N79Z G1d笔记本安装Win11驱动的用户参考。

信创运维工程师 · 银河麒麟 & 容器实战 | 金融生产环境迁移·等保加固 | 142篇原创·17万+阅读 3878

BZOJ 3576 (HNOI 2014)江南乐 (博弈)

题目链接:bzoj 3576 这道题的暴力应该都会,但是对于这道题只能的70分,然后优化就看了很多神犇的题解(具体什么的大家就自己脑补吧= =),膜拜了一下标程。。。Orz。。。 #include #include #include using namespace std; #define maxn (100000+10) int T,F,N; int sg[maxn]; int get(

顺 1488

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

【组合博弈】【sg定理】[HNOI2014] bzoj3576 江南乐

题目点这里 ……这道题的分块……太迷了…………看了一个晚上终于……想通了 当时考这道题的时候 窝博弈基本没入门 = = sg定理是个啥都不懂orz 然后去恶补看了几篇论文(虽然还是感觉他们写的太高深) 大概明白了一点点。。 其实这道题就是传说中的multi-nim游戏 orz 传统的nim游戏是有一堆石子 然后可以从每堆石子中拿走若干个 不可以不拿 结论是如果每堆石子数量

每天心塞一点点 2064

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

[Hnoi 2014] bzoj3576 江南乐 [博弈论]

Description: nnn堆石子,每次可以把一堆石子分成若干份,任意两份之间的差≤1≤1\leq 1且每堆都要&gt;=m&gt;=m>=m,问先后手输赢。 Solution: sgsgsg函数裸题,但是不能枚举后继,复杂度过高。发现这样分事实上只有n−−√n\sqrt{n}种数量不同的石子,并且由于xorxorxor只和奇偶性有关,那么利用分块优化枚举即可。 #includ...

pocket_legend 318

[BZOJ 3576][HNOI 2014]江南乐(SG博弈)

题目链接http://www.lydsy.com/JudgeOnline/problem.php?id=3576思路显然是个SG博弈。 以下内容转自http://blog.youkuaiyun.com/gromah/article/details/27326991: 对于10分的数据:明显当石子数大于1时,先手胜。因为只有一堆,先手只要把石子全拆成只有1个的若干堆就赢了,但如果本来就只有1个石子,就是后手

某沙茶的OI代码库 1409

BZOJ3576:[Hnoi2014]江南乐(博弈)

就是SG了......每堆石子的操作可以平均分为x堆且这堆不小于f才能分 暴力把每种操作分的堆的sg值xor起来就可以求出这个新的了然后这个题居然有个神优化很容易得到把x分为i堆的sg值为 (x % i == 1) ? sg[x / i + 1] : 0 ^ (i - x % i) % 2 == 1 ? sg[x / i] : 0然后对于x / i这样不同的值最多有根号x个 然后按x / i分块的...

lwqq3的博客 269

bzoj 3576: [Hnoi2014]江南乐【博弈论】

这个东西卡常……预处理的时候要先把i%j,i/j都用变量表示,还要把%2变成&1…… 首先每一堆都是不相关子游戏,所以对于每一堆求sg即可 考虑暴力枚举石子数i,分割块数j,分解成子问题求xor和(其实就是根据i/j,i/j+1的个数的奇偶性xor一下即可),然后对sg[i]暴力mex,这样是n^2的 考虑优化,注意到一共只有根号级别的i/j,所以根据这个分块,上面的xor和是跟距个数奇偶...

weixin_30693183的博客 130

[BZOJ 3576][Hnoi2014]江南乐(博弈论)

Description 小A是一个名副其实的狂热的回合制游戏玩家。在获得了许多回合制游戏的世界级奖项之后,小A有一天突然想起了他小时候在江南玩过的一个回合制游戏。 游戏的规则是这样的,首先给定一个数F,然后游戏系统会产生T组游戏。每一组游戏包含N堆石子,小A和他的对手轮流操作。每次操作时,操作者先选定一个不小于2的正整数M (M是操作者自行选定的,而且每次操作时可不一样),然后将任意一堆数...

weixin_34102807的博客 78

【bzoj3576】[Hnoi2014]江南乐 博弈论+SG定理+数学

题目描述 两人进行 $T$ 轮游戏,给定参数 $F$ ,每轮给出 $N$ 堆石子,先手和后手轮流选择石子数大于等于 $F$ 的一堆,将其分成任意(大于1)堆,使得这些堆中石子数最多的和最少的相差不超过1(即尽量均分)。求先手和后手谁必胜。 输入 输入第一行包含两个正整数T和F,分别表示游戏组数与给定的数。接下来T行,每行第一个数N表示该组游戏初始状态下有多少堆石子。之后N个正整数,...

weixin_30902675的博客 140

[BZOJ3576][Hnoi2014]江南乐(博弈Multi-SG游戏+数学相关)

题目描述传送门题解可以发现暴力就是一个裸的Multi-SG游戏。 用SG函数暴力的话,可以枚举m,然后再根据分成m份之后两个x/i和x/i+1的个数奇偶讨论一下就可以了。 但是这样的话时间是O(n2)O(n^2)的。 考虑怎么优化。发现x/i只有n√\sqrt n种取值,并且x/i和x/i+1个数的奇偶随i而变化。然后就可以用以前的一种数学方法用⌊x⌊xi⌋⌋\lfloor{{x\over {

zyf2000 1087

【bzoj3576】[Hnoi2014]江南乐 数论分块+博弈论

Description 小A是一个名副其实的狂热的回合制游戏玩家。在获得了许多回合制游戏的世界级奖项之后,小A有一天突然想起了他小时候在江南玩过的一个回合制游戏。 游戏的规则是这样的,首先给定一个数F,然后游戏系统会产生T组游戏。每一组游戏包含N堆石子,小A和他的对手轮流操作。每次操作时,操作者先选定一个不小于2的正整数M (M是操作者自行选定的,而且每次操作时可不一样),然后将任意一堆数量不小于...

weixin_30914981的博客 133

[BZOJ3576][Hnoi2014]江南乐(SG函数+博弈dp+数论)

Description 小 A 是一个名副其实的狂热的回合制游戏玩家。在获得了许多回合制游戏的世界级奖项之后,小 A 有一天突然想起了他小时候在江南玩过的一个回合制游戏。 游戏的规则是这样的,首先给定一个数 FFF ,然后游戏系统会产生 TTT 组游戏。每一组游戏包含 NNN 堆石子,小 AAA 和他的对手轮流操作。每次操作时,操作者先选定一个不小于 222 的正整数 MMM ( MMM 是...

女装的你,如此好看! 307

BZOJ3576 [Hnoi2014]江南乐

本文版权归ljh2000和博客园共有,欢迎转载,但须保留此声明,并给出原文链接,谢谢合作。 本文作者:ljh2000 作者博客:http://www.cnblogs.com/ljh2000-jump/转载请注明出处,侵权必究,保留最终解释权! 题目链接:BZOJ3576 正解:博弈论+$SG$函数 解题报告:   考虑每堆是单独的子游戏,互...

dgoh41514的博客 130
上一篇: [BZOJ2959]长跑(LCT)
下一篇: [BZOJ1257][CQOI2007]余数之和sum(数论)
FromATP
博客等级 码龄10年 75粉丝 163原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值