首页 > 其他分享 >Codeforce-- 思维题

Codeforce-- 思维题

时间:2024-02-11 16:55:39浏览次数:26  
标签:思维 xa -- win yb xb else ya Codeforce

2-11 Eat the chip

思路:题意可知,a从下往上走,b从上往下走,我们可以思考一个问题,在某一个回合,如果a和b在同一列中(a是Alice,b是Bob),一方怎么走,另外一方就跟着这一方走,所以同一列的时候是该回合后手的必胜态,先手的必败态。于是可以递推:如果在走到边界的时候有机会仍然保持b在a的上方,那么有机会分出胜负,因为一方不可以走出边界,所以ya-yb一定会发生变化,直到xa-xb = 0

import sys
#file I/O
#sys.stdin = open('input.txt', 'r')
#sys.stdout = open('output.txt', 'w')

#faster I/O
input = sys.stdin.readline
sys.setrecursionlimit(30)

def print(ans='',end = '\n'):
    sys.stdout.write(str(ans) + end)

def solve() -> None:
    n,m,xa,ya,xb,yb = map(int,input().split())
    flag = bool((xb - xa) % 2)
    if not flag:
        winner = "Bob"
        if xa >= xb:
            win = False
        elif ya == yb:
            win = True
        else:
            if yb > ya:
                n_turn = yb - 1
            else:
                n_turn = m - yb
            win = xb - 2 * n_turn >= xa
    else:
        winner = "Alice"
        xa += 1
        ya += 0 if yb - ya == 0 else 1 if yb - ya > 0 else -1
        if xa > xb:
            win = False
        elif ya == yb:
            win = True
        else:
            if ya < yb :
                n_turn = m - ya
            else:
                n_turn = ya - 1
            win = xb - 2 * n_turn >= xa
    print(winner if win else "Draw")



T = int(input())
for _ in range(T):
    solve()

标签:思维,xa,--,win,yb,xb,else,ya,Codeforce
From: https://www.cnblogs.com/howardsblog/p/18013393

相关文章

  • 【C#】【WPF】WPF开源控件库HandyControl应用
    1、首先使用nuget包管理器下载handycontrol 2、app.xaml里面引用,这样可以使用里面的样式<Applicationx:Class="HandyControlTest.App"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microso......
  • 有道云笔记数据备份相关
    PC客户端导出最新版有导出全部文件的功能,但限制90天一次,除非开通会员(无限次)开放平台API开放平台地址申请理由我是一个个人开发者,API不是在APP或网站中使用,主要是作为个人的学习,测试及自己笔记的整理归档等。主页为https协议,但提交接口为http协议,请求被浏览器阻止......
  • 抛弃Spring Cloud Gateway,得物 使用Netty架构100Wqps网关
    文章很长,且持续更新,建议收藏起来,慢慢读!疯狂创客圈总目录博客园版为您奉上珍贵的学习资源:免费赠送:《尼恩Java面试宝典》持续更新+史上最全+面试必备2000页+面试必备+大厂必备+涨薪必备免费赠送:《尼恩技术圣经+高并发系列PDF》,帮你实现技术自由,完成职业升级,薪......
  • 洛谷P5725 【深基4.习8】求三角形
    洛谷P5725【深基4.习8】求三角形【深基4.习8】求三角形题目描述模仿例题,打印出不同方向的正方形,然后打印三角形矩阵。中间有个空行。输入格式输入矩阵的规模,不超过9。输出格式输出矩形和正方形样例#1样例输入#14样例输出#101020304050607080910111213141516......
  • Ubuntu 设置合上笔记本盖子不休眠的方法
    Ubuntu设置合上笔记本盖子不休眠的方法编辑下列文件:sudogedit/etc/systemd/logind.conf​​#HandlePowerKey按下电源键后的行为,默认poweroff​​#HandleSleepKey按下挂起键后的行为,默认suspend​​#HandleHibernateKey按下休眠键后的行为,默认hibernate​​#HandleLidS......
  • Codeforces Round 905 (Div. 3)
    题目链接A.先算距离,特判0的位置,最后加4#include<bits/stdc++.h>usingnamespacestd;#defineintlonglongconstintN=1e5+10;#defineinf0x3f3f3f3fvoidsolve(){strings;cin>>s;s=""+s;intlast=1,now,ans=0;for(inti=1;i<s.si......
  • ABC340
    Alink模拟。Blink模拟指针。Clink记忆化搜索。时间复杂度证明可以从一个奇数分多遍以后只会有两种数这一角度入手。Dlink由于每次只能选择一种,于是可以将选择变成连边,进行最短路。Elink线段树入门。取余操作本身就是一个环。注意题目中的操作是从\(0\simn-1\)。......
  • 设计模式
    设计模式创建一个接口;publicinterfaceShape{voiddraw();}创建实现接口的实体类;publicclassRectangleimplementsShape{@Overridepublicvoiddraw(){System.out.println("InsideRectangle::draw()method.");}}创建一个工厂......
  • Google的蛋白质结构预测项目代码(Demo)
    相关:ArtificialIntelligence|60MinutesFullEpisodes......
  • 构建之法读后感
    寒假在家按主任要求读了邹欣老师的《构建之法》一本书,对于软件工程又有了新的认识寒假在家也经常被亲戚朋友问:“你学的什么专业啊?”“软件工程是不是都会写软件,你会写一个什么什么的软件啊?”这种话,每遇到这种问题也只好笑笑而过,在这个问题当中就隐藏着两个个普通人对软件......