博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
3404: [Usaco2009 Open]Cow Digit Game又见数字游戏
阅读量:6430 次
发布时间:2019-06-23

本文共 2222 字,大约阅读时间需要 7 分钟。

3404: [Usaco2009 Open]Cow Digit Game又见数字游戏

Time Limit: 3 Sec  Memory Limit: 128 MB
Submit: 72  Solved: 48
[][][]

Description

    贝茜和约翰在玩一个数字游戏.贝茜需要你帮助她.
    游戏一共进行了G(1≤G≤100)场.第i场游戏开始于一个正整数Ni(l≤Ni≤1,000,000).游
戏规则是这样的:双方轮流操作,将当前的数字减去一个数,这个数可以是当前数字的最大数码,也可以是最小的非0数码.比如当前的数是3014,操作者可以减去1变成3013,也可以减去4变成3010.若干次操作之后,这个数字会变成0.这时候不能再操作的一方为输家.    贝茜总是先开始操作.如果贝茜和约翰都足够聪明,执行最好的策略.请你计算最后的赢家.
    比如,一场游戏开始于13.贝茜将13减去3变成10.约翰只能将10减去1变成9.贝茜再将9减去9变成0.最后贝茜赢.

Input

    第1行输入一个整数G,之后G行一行输入一个Ni.

Output

 
    对于每一场游戏,若贝茜能赢,则输出一行“YES”,否则输幽一行“NO”

Sample Input

2
9
10

Sample Output

YES
NO

HINT

 

For the first game, Bessie simply takes the number 9 and wins. For the second game, Bessie must take 1 (since she cannot take 0), and then FJ can win by taking 9.

 

Source

 

题解:很萌的博弈论问题。。。但是我还是在读题上逗比了N次——第一次我以为每次可以减去 1-最大的位数 ;第二次我以为可以减去 最小的位数-最大的位数 ;直到第三次才发现只可以减去最大位数和最小位数。。。别的没了,博弈论经典算法AC之

PS:不过虽然AC了,但是2800ms+,时限为3s,这个速度比较滚粗,于是本人打算明天再来一发优化题解么么哒!!!

1 /************************************************************** 2     Problem: 3404 3     User: HansBug 4     Language: Pascal 5     Result: Accepted 6     Time:2804 ms 7     Memory:9992 kb 8 ****************************************************************/ 9  10 var11    i,j,k,l,m,n,t:longint;12    a:array[0..1000005,1..2] of boolean;13    b:array[0..1000005,1..2] of longint;14 function max(x,y:longint):longint;15          begin16               if x>y then max:=x else max:=y;17          end;18 function min(x,y:longint):longint;19          begin20               if x
0 do28 begin29 k:=max(k,j mod 10);30 if (j mod 10)>0 then t:=min(t,j mod 10);31 j:=j div 10;32 end;33 a[i,1]:=false;34 if a[i-t,2] then a[i,1]:=true;35 if a[i-k,2] then a[i,1]:=true;36 a[i,2]:=true;37 if not(a[i-t,1]) then a[i,2]:=false;38 if not(a[i-k,1]) then a[i,2]:=false;39 end;40 readln(n);41 for i:=1 to n do42 begin43 readln(m);44 if a[m,1] then writeln('YES') else writeln('NO');45 end;46 readln;47 end.

 

转载于:https://www.cnblogs.com/HansBug/p/4418805.html

你可能感兴趣的文章
关于tbody js取法兼容。
查看>>
[CC]点云密度计算
查看>>
CATransition 动画处理视图切换
查看>>
[转载] 高等应用数学问题的matlab求解——第3章 微积分问题的计算机求解
查看>>
大整数比较大小
查看>>
C++ 指定路径文件夹存在与否查询及文件夹创建
查看>>
八大排序算法的Java实现
查看>>
IDEA+Maven+Tomcat构建项目流程
查看>>
数据是重要的战略资源,数据同样是产品非常重要的组成部分。淘宝对中国最大的贡献,不只是方便了老百姓购物,而是把中国消费者的消费习惯数据慢慢沉淀下来。...
查看>>
Leetcode Find Minimum in Rotated Sorted Array
查看>>
Python接口测试-使用requests模块发送post请求
查看>>
System.currentTimeMillis()计算方式与时间的单位转换
查看>>
Extra:Variable Types
查看>>
js传参时,没有参数传入,默认值的设置
查看>>
ASP.NET温故而知新学习系列之ASP.NET多线程编程—.NET下的多线程编程Thread中委托的使用(六)...
查看>>
最新整理知识结构图
查看>>
linux安装mysql
查看>>
flask 2 进阶
查看>>
sentences in movies and teleplays[1]
查看>>
【20181023T1】战争【反向并查集】
查看>>