poj 2505 A multiplication game(博弈)

news/2024/6/2 14:47:13 标签: 游戏

【题目大意】:给出一个数n...两个人轮流游戏,每次可以给p=1乘上2~9之间的任意一个数,问谁先达到n。


【解题思路】:如果n的范围在2~9之间...先手胜,10~18之间后手胜....19~162之间...是由后手必胜态(10~18)转移过来的必败态(因为在10~18的情况下,是我要赢,我势必拿最大)...163~324是由先手必胜态(19~162)转移过来的后手必胜态...以此类推....

可以得到一堆先手必胜态和必败态的区间。~~然后找规律...发现区间的右端点都是*9*2*9*2...这样子得到的...所以只需要/18除完它,看剩下的数是在2~9直接还是>9即刻...


Orz~傻傻的用lld,wa了一次


【代码】:

#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <vector>
#include <queue>
#include <cmath>
#include <string>
#include <cctype>
#include <map>
#include <iomanip>
                   
using namespace std;
                   
#define eps 1e-8
#define pi acos(-1.0)
#define inf 1<<30
#define linf 1LL<<60
#define pb push_back
#define lc(x) (x << 1)
#define rc(x) (x << 1 | 1)
#define lowbit(x) (x & (-x))
#define ll long long

double n;

int main(){
   while(~scanf("%lf",&n)){
            while(n>18)
                     n=n/18;
            if(n<=9) printf("Stan wins.\n");
            else printf("Ollie wins.\n");
   }
   return 0;
}



http://www.niftyadmin.cn/n/970884.html

相关文章

UVA11488 字典树模板题

https://vjudge.net/problem/UVA-11488 求 前缀*以这个子串为前缀的数目 的最大值。 字典树模板题。 #include <cstdlib> #include <cstdio> #include <iostream> #include <string> #include <cstring> using namespace std; const int A…

2010创造奇迹的一年

2010年&#xff0c;24了&#xff0c;真的老了&#xff0c;胡茬刮的更勤了&#xff0c;不敢再轻狂&#xff0c;不敢再张扬了&#xff0c;微笑的&#xff0c;默默的一个人去迎接。我相信这一年是创造奇迹的一年&#xff0c;这一年有很多安排&#xff0c;给自己下了很多目标。这一…

poj 2425 A Chess Game (sg函数)

【题目大意】&#xff1a;给出一幅有向图&#xff0c;然后告诉你上面有m个棋子&#xff0c;游戏者轮流操作&#xff0c;走到不能走的人输。 【解题思路】&#xff1a;sg函数...棋子的每一次移动都是它的后继状态也就是 sg(x)mex(SG[et[i].v])et[i].v为邻接表表示与其相连的点。…

java 缓存框架java caching system使用示例

要使用java caching system&#xff0c;需要下面这几个包&#xff1a;jcs.jar&#xff0c;concurrent.jar,commons-logging.jar, commons-lang.jar,commons-collection.jar这几个包&#xff0c;在java工程里面&#xff0c; 首先新建一个使用jcs的配置文件&#xff1a;cache.ccf…

Ubuntu下安装iraf

原来的参考网页被删了&#xff0c;又找到另一篇&#xff0c;应该就是原来那个版本&#xff0c;没试过&#xff0c;先记到自己的blog下再说本文中默认的操作系统是Linux/Ubuntu or Debian也是我在用的操作系统&#xff0c;如果你是其他的Linux甚至是MaxOS用户&#xff0c;安装过…

hdoj 1598 find the most comfortable road(并查集)

【题目大意】&#xff1a; XX星有许多城市&#xff0c;城市之间通过一种奇怪的高速公路SARS(Super Air Roam Structure---超级空中漫游结构&#xff09;进行交流&#xff0c;每条SARS都对行驶在上面的Flycar限制了固定的Speed&#xff0c;同时XX星人对 Flycar的“舒适度”有特殊…

HDU1716 全排列

不说了&#xff0c;格式就是 每一行最后一个不能有空格 最后一行不能有空格 0开头的不能输出 别问我怎么弄得&#xff0c;反正我也不清楚胡乱加条件就过了 #include <iostream> #include <algorithm> #include <cstdio> #include <string.h> using …

新手学堂:Linux操作系统调优参数的意义

所有的TCP/IP调优参数都位于/proc/sys/net/目录. 例如, 下面是最重要的一些调优参数, 后面是它们的含义: 1. /proc/sys/net/core/rmem_max — 最大的TCP数据接收缓冲 2. /proc/sys/net/core/wmem_max — 最大的TCP数据发送缓冲 3. /proc/sys/net/ipv4/tcp_timestamps — 时间戳…