首页 > 其他分享 >[每日 C] MEX Game 1

[每日 C] MEX Game 1

时间:2025-01-18 16:35:14浏览次数:1  
标签:每日 Alice Game textrm mathcal rm Bob MEX

前言

泻药, 吉司机线段树学不动

冷静的利用时间已经变成了不冷静的浪费时间, 干脆打两道 \(\rm{C}\) 冷静一下

思路

看到 \(\rm{MEX}\) 了, 无敌 , 看到 \(2, 1, 0\) 了, 无敌

但是应该不是这个方向

先转化题意

\(\textrm{Alice, Bob}\) 轮流进行游戏, \(\textrm{Alice}\) 每次取出数组中的一个数放进结果数组中, \(\textrm{Bob}\) 每次删除数组中的一个数, \(\textrm{Alice}\) 希望最大化 \(\rm{MEX}\) , 而 \(\textrm{Bob}\) 希望最小化, 求最终的游戏得分

好的也是抄了一遍题

首先玩一下样例, 你发现 \(\rm{Alice}\) 应当从小到大取数, 而 \(\rm{Bob}\) 也应当这样取来干扰 \(\rm{Alice}\) , 特别的是一种数只取一次

但是你发现显然这样是错的
给出一组 \(\rm{hack}\)

0 0 1 1 2

\(\mathcal{O} (n)\) 做法

按照我们的方法, \(\rm{Alice}\) 将会取到 \(0, 1\) , 最终答案为 \(2\)
但是你发现如果 \(\rm{Alice}\) 开局直接取 \(2\) , 后面也一定能取到 \(0, 1\) 答案更优

我们考虑形式化表示, 如果一个数出现次数 \(\geq 2\) 那么一定是取得到的, 我们最初还可以取一个出现次数为 \(1\) 的, 贪心的取最小的那个肯定是最优的

\(\mathcal{O} (n \log n)\) 做法

你发现能否取到是由单调性的, 考虑二分

那么如何判定是否能取到一个数?
同 \(\mathcal{O} (n)\) 算法的思想一样, 出现了超过一个 \(x\) 使得其出现次数小于 \(2\) 即为不合法

总结

一种博弈问题, 即你取一个, 我取一个, 一定可以通过对称取法取到个数 \(\geq 2\) 的数

然后就是对先手的处理

标签:每日,Alice,Game,textrm,mathcal,rm,Bob,MEX
From: https://www.cnblogs.com/YzaCsp/p/18678554

相关文章

  • 每日一题:奶牛排队
    题目链接:https://www.luogu.com.cn/problem/P6510题目描述:奶牛在熊大妈的带领下排成了一条直队。显然,不同的奶牛身高不一定相同……现在,奶牛们想知道,如果找出一些连续的奶牛,要求最左边的奶牛A是最矮的,最右边的B是最高的,且B奶牛高于A奶牛。中间如果存在奶牛,则身高不能和A,B奶牛......
  • 【练习】力扣热题 100 每日温度
    题目给定一个整数数组temperatures,表示每天的温度,返回一个数组answer,其中answer[i]是指对于第i天,下一个更高温度出现在几天后。如果气温在这之后都不会升高,请在该位置用0来代替。示例1:输入:temperatures=[73,74,75,71,69,72,76,73]输出:[1,1,4,2,1,1......
  • 高级java每日一道面试题-2025年01月16日-框架篇[Mybatis篇]-说说Mybatis的缓存机制?
    如果有遗漏,评论区告诉我进行补充面试官:说说Mybatis的缓存机制?我回答:在Java高级面试中,MyBatis的缓存机制是一个重要的话题。MyBatis是一个流行的Java持久化框架,它提供了强大的数据库访问能力和灵活的SQL映射配置。为了提高查询性能并减少数据库访问次数,MyBatis引入了......
  • 【论文阅读】GROOT:Learning to Follow Instructions by Watching Gameplay Viedos
    GROOT:LearningtoFollowInstructionsbyWatchingGameplayViedos.作者为北京大学梁一韬所在的TeamCraftJarvis,发表时间为2023Background在开放世界下开发类人级别的具身智能体以解决开放式任务一直是人工智能领域长期以来追求的目标。随着ChatGPT的流行,近年来涌现了一批......
  • (翻译) 关于游戏网络,每个游戏程序需知 What Every Programmer Needs To Know About
    原文链接 https://gafferongames.com/post/what_every_programmer_needs_to_know_about_game_networking/ Haveyoueverwonderedhowmultiplayergameswork?Fromtheoutsideitseemsmagical:twoormoreplayerssharingaconsistentexperience(一致的体验)across......
  • 每日一题洛谷P5726 【深基4.习9】打分C++
    #include<iostream>#include<iomanip>usingnamespacestd;intmain(){ intn; cin>>n; intstr[1000]={0}; intmax=0; intmin=10; for(inti=0;i<n;i++){ cin>>str[i]; if(str[i]>max){ max=str[i......
  • JavaWeb课后笔记及体会分享(每日一更)
           从今天开始学习JavaWeb,在接下来的时间里我将学习JavaSE,MySQL,Web前端,JavaEE,SSM三大框架,SpainBoot,SpringCloud,以及一些常见面试题的练习。1.IDEA常用快捷键  Shift两次:包含各种文件、方法的搜索Ctrl+Shift+F:根据输入内容查找整个项目或指定目录内文件......
  • 【网络云SRE运维开发】2025第3周-每日【2025/01/15】小测-【第14章ospf高级配置】理论
    文章目录【网络云SRE运维开发】2025第3周-每日【2025/01/15】小测-【第14章ospf高级配置】理论和实操14.1选择题在H3C设备上配置OSPF时,以下哪个命令用于启动OSPF进程?A.[H3C]ospfenableB.[H3C]ospf1C.[H3C]ospfstartD.[H3C]ospfprocessOSPF区域0......
  • 【网络云SRE运维开发】2025第3周-每日【2025/01/15】小测-【第14章ospf高级配置】理论
    文章目录14.1选择题解题思路和参考答案14.2理论题解题思路和参考答案14.3实操题解题思路和参考答案思科(Cisco)设备华为(Huawei)设备小米/锐捷(或其他支持标准CLI命令的设备)通过网络管理工具注意事项【网络云SRE运维开发】2025第3周-每日【2025/01/15】小测-【第14章o......
  • 2025/1/15 力扣每日一题(3066. 超过阈值的最少操作数 II)
    来源:LeetCode链接:https://leetcode.cn/problems/minimum-operations-to-exceed-threshold-value-ii/description/?envType=daily-question&envId=2025-01-15题目:给你一个下标从0开始的整数数组nums和一个整数k。一次操作中,你将执行:选择nums中最小的两个整数x和y......