首页 > 其他分享 >NC223888 红色和紫色.md

NC223888 红色和紫色.md

时间:2023-08-27 21:01:14浏览次数:123  
标签:md 格子 输出 染色 小红 紫色 NC223888 获胜

题目链接

题目

题目描述

漫长的生命总是无聊的。这天,小红和紫准备玩一个染色游戏。
她们拿出了一个有 \(n*m\) 个格子的网格,每个格子只能被染成红色或紫色。每个人可以任意选择一个格子染成红色和紫色,两人轮流进行染色。
她们约定,不能有两个相邻的格子有相同的颜色。最后无法进行染色的人判输。
小红先手进行染色。小红想知道,双方都采用最优策略的情况下,她能否取得胜利?

输入描述

两个正整数 \(n\) 和 \(m\) ,用空格隔开。
\((1\leq n, m \leq 10^9)\)

输出描述

如果小红获胜,则输出一个字符串"akai"
如果紫获胜,则输出一个字符串"yukari"

示例1

输入

1 1

输出

akai

说明

小红直接把这个格子染成红色,即可获胜

示例2

输入

1 2

输出

yukari

说明

小红染色后,紫只需要在相邻的格子染上不同的颜色即可获胜

题解

知识点:博弈论。

当且仅当 \(n,m\) 都为奇数时,小红可以占据中心位置,之后和小紫采取位置中心对称且颜色相同的染色即可获胜。否则,小紫采取这个策略会获胜。

时间复杂度 \(O(1)\)

空间复杂度 \(O(1)\)

代码

#include <bits/stdc++.h>
using namespace std;
using ll = long long;

int main() {
    std::ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);
    int n, m;
    cin >> n >> m;
    if ((n & 1) && (m & 1)) cout << "akai" << '\n';
    else cout << "yukari" << '\n';
    return 0;
}

标签:md,格子,输出,染色,小红,紫色,NC223888,获胜
From: https://www.cnblogs.com/BlankYang/p/17660824.html

相关文章

  • CMD命令如何创建计划任务,创建完成即刻运行只运行一次后删除任务
    解决方案:1.创建bat文件,任务命令如下schtasks/create/TN名称/TR运行程序路径/SC指定计划频率设为用户登入时运行schtasks/create/TNupdate/TRD:\Dir\bz2.exe/SCONLOGON12.立刻执行schtasks/run/tnupdate3.删除任务SCHTASKS/Delete/TNupdate/F4.完整关......
  • dmd-50
    按r键将其转换为字符 再将其拷贝下来 将其md5解密 得到一串英文,根据wp需要再将其加密一下,不知道为啥,得到的md5即为flag ......
  • Base64|MD5加密工具类
    骑士李四记录Base64Utilimportorg.apache.commons.codec.binary.Base64;publicclassBase64Util{ publicstaticStringencode(Stringinput){ if(null==input){ input=""; } byte[]base64=Base64.encodeBase64(input.getBytes()); try{ ......
  • 利用systemd设置springboot微服务服务在linux重启后自启动
    要使SpringBoot服务的JAR包在Linux重启后自启动,您可以使用systemd。以下是步骤:1.创建一个systemd服务单元文件在/etc/systemd/system/目录下,创建一个新的服务单元文件,例如my-springboot-app.service。使用sudo打开一个文本编辑器来创建和编辑文件:sudonano/e......
  • cmd执行任务时间差计算脚本
    @echooffsetlocalenabledelayedexpansionREM===========================dosomethingsetstart_time=%time%timeout/t3setend_time=%time%REM===========================deltatimeset/adelta_hours=1%end_time:~0,2%-1%start_time:~0,2%set/adelta_......
  • windows cmd bat maven打包pause无法暂停问题
    解决:使用call来调用命令::当前目录setwork_path=%~dp0cd/d%work_path%callmvncleancallmvninstallechook...pause 执行结果:  ......
  • Lamda表达式
    Lamda表达式1.为什么要用lamda表达式(函数式编程)避免匿名内部类定义过多。代码简洁。去掉没有意义代码,只留下核心逻辑。newThread(()->System.out.println("多线程学习")).start()2.函数式接口定义:任何接口,如果只包含唯一一个抽象方法,那么它就是一个函数式接口......
  • 关于前端接口的formData传参
    工作中遇到个简单的问题,后端提供接口需要前端用formdata传文件和普通对象参数拼接的参数;本来是个简单的问题,记录一下做个简单的总结顺便梳理下相关基础性知识点:1.formdata将数据转换成键值对进行传参,key是唯一,一个key可以对应多个value,如果是使用表单初始化,每个表单字段对......
  • 网工常用的CMD窗口命令行
    晚上好,我的网工朋友。作为网络工程师,工作中经常是容易被作为甩锅的对象。凡是业务系统出现问题或其他各种问题,人们总是会认为是网络问题,最初的怀疑都指向网工。然而最终结果往往是自己服务器出了问题。今天就给你说几种在日常工作中经常使用的查看网络状态的方式。一些检测方法过于......
  • python - 文件md5校验
    通过md5校验文件,我们可以判断文件内容是否改变,用python实现代码如下importhashlib#1.txt为空文本withopen('1.txt','rb')asf:data=f.read()md5Old=hashlib.md5(data).hexdigest()print(md5Old)#d41d8cd98f00b204e9800998ecf8427e#1.txt内容为12......