牛客小白月赛2 E.是是非非

题目链接

题目描述

坎为水,险阳失道,渊深不测;离为火,依附团结,光明绚丽。
坎卦:水洊至,习坎;君子以常德行,习教事。一轮明月照水中,只见影儿不见踪,愚夫当财下去取,摸来摸去一场空。
离卦:明两作,离,大人以继明照四方。官人来占主高升,庄农人家产业增,生意买卖利息厚,匠艺占之大亨通。

有一些石子堆,第 iii 堆有 aia_iai​ 个石子。你和算卦先生轮流从任一堆中任取若干颗石子(每次只能取自一堆,并且不能不取),取到最后一颗石子的人获胜。
算卦先生来问你,如果你先手,你是否有必胜策略?若是改动其中几个石子堆中石子的数量呢?

输入描述:

第一行两个正整数 n,qn,qn,q,表示有 nnn 个石堆,qqq 次操作。
第二行 nnn 个整数,第 iii 个数 aia_iai​ 表示第 iii 个石堆初始有 aia_iai​ 个石子。
接下去 qqq 行,每行两个正整数 x,yx,yx,y ,表示把第 xxx 堆石子的个数修改成 yyy。操作是累计的,也就是说,每次操作是在上一次操作结束后的状态上操作的。

输出描述:

共 qqq 行,输出每次操作之后先手是否有必胜策略。
如果有,输出 "Kan"\texttt{"Kan"}"Kan" ,否则输出 "Li"\texttt{"Li"}"Li"。

示例1

输入

5 4
6 7 3 4 5
1 6
2 1
2 4
5 5

输出

Kan
Kan
Li
Li

典型的 Nim 博弈,n 堆石子任选一堆任取若干个,只需要判断抑或和是否为 000 即可,若等于 000 则无必胜策略,每次将第 xxx 个修改为 yyy,只需要将抑或和 sumsumsum 修改成 sum⊕a[x]⊕ysum\oplus a[x]\oplus ysum⊕a[x]⊕y 即可,AC代码如下:

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=1e5+5;
int n,q,x,y,a[N],sum=0;
int main()
{scanf("%d%d",&n,&q);for(int i=1;i<=n;i++){scanf("%d",&a[i]);sum^=a[i];}while(q--){scanf("%d%d",&x,&y);sum=sum^a[x]^y;a[x]=y;if(sum) printf("Kan\n");else printf("Li\n");}return 0;
}

牛客小白月赛2 E.是是非非相关推荐

  1. 牛客小白月赛16 小石的签到题(博弈)

    牛客小白月赛16 小石的签到题 链接:https://ac.nowcoder.com/acm/contest/949/A来源:牛客网 题目描述 输入描述: 共一行,输入一个数 nnn . 输出描述: ...

  2. F.孤独(牛客小白月赛39)

    F.孤独(牛客小白月赛39) 题意: 给定一棵树,寻找一个路径,将断掉所有与这个路径上的点相连的边,使得剩下的最大连通块的大小最小 题解: 这题有点印象,感觉做过,至少这个方法肯定遇到过 设dp[u] ...

  3. 牛客小白月赛58 B(暴力)C(思维)D(dp滚动数组优化)

    牛客小白月赛58 感觉没什么意思,这场月赛出题人有点问题. B 题意:给定一定的数据填充顺序和每一个填充层的名称,只有填充满了上一层才可以填充下一层. 但是每一层又属于某一个大层,一个大层中包含了若干 ...

  4. 牛客小白月赛65个人题解A-E

    1. 牛客小白月赛65 A. 牛牛去购物 题意:给定n元,购买价格为a元的篮球和价格为b的篮球,数量不定,要使得花掉的钱最多,也就是剩余的钱数最少,求这个值 (1 <= n, a, b < ...

  5. 牛客小白月赛24 J.建设道路

    牛客小白月赛24 J.建设道路 题目链接 题目描述 牛牛国有 nnn 个城市,编号为 1-n,第 iii 个城市有一个价值 aia_iai​ ,牛国的国王牛阔落特别喜欢在牛牛国旅游,并且他不想每次旅游 ...

  6. 牛客小白月赛4 D.郊区春游

    牛客小白月赛4 D.郊区春游 题目链接 题目描述 今天春天铁子的班上组织了一场春游,在铁子的城市里有 nnn 个郊区和 mmm 条无向道路,第 iii 条道路连接郊区 AiA_iAi​ 和 BiB_i ...

  7. 牛客小白月赛25 C.白魔法师

    牛客小白月赛25 C.白魔法师 题目链接 题目描述 你是一个白魔法师. 现在你拿到了一棵树,树上有 个点,每个点被染成了黑色或白色. 你可以释放一次魔法,将某个点染成白色.(该点不一定是黑色点,也可以 ...

  8. 牛客小白月赛60(A~C)题解

    原题地址:牛客小白月赛60_ACM/NOI/CSP/CCPC/ICPC算法编程高难度练习赛_牛客竞赛OJ 题目A:小竹与妈妈 题意:输出(x-b)/a即可,没什么好说 代码: #include< ...

  9. 牛客小白月赛5 I.区间 (interval)

    牛客小白月赛5 I.区间 (interval) 题目链接 题目描述 Apojacsleam喜欢数组.他现在有一个n个元素的数组a,而他要对a[L]-a[R]进行M次操作:操作一:将a[L]-a[R]内 ...

最新文章

  1. QQ超时不能刷新好友接收发送信息
  2. VMware网络选项分析
  3. 当 “HTTP” 先生遇上“S”小姐
  4. ListView实现分页
  5. [Win10应用开发] 使用 Windows 推送服务 (WNS)
  6. 一步步编写操作系统 36 一级页表与虚拟地址1
  7. C++11 FAQ中文版:std::function 和 std::bind
  8. 多所高校通知,新学期延期开学!做好线上教学准备
  9. 基于CNN+MFCC的语音情感识别
  10. MySQL日期处理-查询间隔数据
  11. 《Linux命令行与shell脚本编程大全》 第一、二章 学习笔记
  12. Guacamole之本地安装Guacamole(二)
  13. KELL *** ERROR L104: MULTIPLE PUBLIC DEFINITIONS
  14. 大数据学习入门规划?
  15. 【java】输入输出流
  16. Win11如何更改字体样式?Win11更改字体样式的方法
  17. 微巨科技:公众号迁移公证流程及注意事项
  18. 实验吧-证明自己吧(超详细)
  19. [学点英语]一些常见的英语词汇缩写及读音纠正
  20. laya2.0 微信好友对战

热门文章

  1. 网易云信完成聊天的案例
  2. 抱朴守拙是最稳健的进取之道
  3. rviz导航——2D Pose estimate
  4. Android利用WiFiManager扫描AP列表的实例
  5. 跨站测试与利用中的绕过技术
  6. 离散傅里叶变换-DFT(FFT基础)
  7. 基于遗传算法和模拟退火算法改进的混合模拟退火算法(解决求函数极值问题,MATLAB代码已实现)
  8. 前端基于百度地图实现考勤签到功能
  9. 相对论通俗演义(1-10) 第十章
  10. python画玫瑰图_三步学会用python画一个简单的玫瑰图