题目链接:http://acm.hdu.edu.cn/showproblem.php?

pid=1944

pid=1536">
http://acm.hdu.edu.cn/showproblem.php?pid=1536

给定每一次能够取的石头数,给定非常多种情况,每一种情况有若干堆石头,推断先手胜负。

SG函数打表,然后直接抑或。推断结果是否为0。第一次写SG函数,贴个代码,慢慢理解。

代码:

/* ***********************************************
Author :rabbit
Created Time :2014/7/4 12:00:18
File Name :3.cpp
************************************************ */
#pragma comment(linker, "/STACK:102400000,102400000")
#include <stdio.h>
#include <iostream>
#include <algorithm>
#include <sstream>
#include <stdlib.h>
#include <string.h>
#include <limits.h>
#include <string>
#include <time.h>
#include <math.h>
#include <queue>
#include <stack>
#include <set>
#include <map>
using namespace std;
#define INF 0x3f3f3f3f
#define eps 1e-8
#define pi acos(-1.0)
typedef long long ll;
int f[110],d[20010],g[110];
int SG(int p,int k){
memset(g,0,sizeof(g));
for(int i=0;i<k;i++){
int t=p-f[i];
if(t<0)break;
if(d[t]==-1)d[t]=SG(t,k);
g[d[t]]=1;
}
for(int i=0;;i++)
if(!g[i])return i;
}
int main()
{
//freopen("data.in","r",stdin);
//freopen("data.out","w",stdout);
int n;
while(~scanf("%d",&n)){
if(!n)break;
for(int i=0;i<n;i++)scanf("%d",&f[i]);
sort(f,f+n);
memset(d,-1,sizeof(d));
d[0]=0;
for(int i=1;i<=10010;i++)
d[i]=SG(i,n);
int m;
scanf("%d",&m);
while(m--){
int k;
scanf("%d",&k);
int sum=0,v;
while(k--){
scanf("%d",&v);
sum^=d[v];
}
if(!sum)printf("L");
else printf("W");
}
puts("");
}
return 0;
}

SG 函数初步 HDU 1536 &amp;&amp; HDU 1944的更多相关文章

  1. (巴什博弈 sg函数入门1) Brave Game -- hdu -- 1846

    链接: http://acm.hdu.edu.cn/showproblem.php?pid=1846 首先来玩个游戏,引用杭电课件上的: (1) 玩家:2人:(2) 道具:23张扑克牌:(3) 规则: ...

  2. hdu 3032 Nim or not Nim? sg函数 难度:0

    Nim or not Nim? Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)T ...

  3. S-Nim HDU 1536 博弈 sg函数

    S-Nim HDU 1536 博弈 sg函数 题意 首先输入K,表示一个集合的大小,之后输入集合,表示对于这对石子只能去这个集合中的元素的个数,之后输入 一个m表示接下来对于这个集合要进行m次询问,之 ...

  4. HDU 1536 sg函数

    S-Nim Time Limit: 5000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submi ...

  5. hdu 1536 SG函数模板题

    S-Nim Time Limit: 5000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Subm ...

  6. HDU 1536 S-Nim (组合游戏+SG函数)

    题意:针对Nim博弈,给定上一个集合,然后下面有 m 个询问,每个询问有 x 堆石子 ,问你每次只能从某一个堆中取出 y 个石子,并且这个 y 必须属于给定的集合,问你先手胜还是负. 析:一个很简单的 ...

  7. hdu 2147 SG函数打表(手写也可以) 找规律

    kiki's game Time Limit: 5000/1000 MS (Java/Others)    Memory Limit: 40000/1000 K (Java/Others) Total ...

  8. hdu 1848 简单SG函数

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1848 Problem Description 任何一个大学生对菲波那契数列(Fibonacci num ...

  9. HDU 5724 Chess(SG函数+状态压缩)

    http://acm.split.hdu.edu.cn/showproblem.php?pid=5724 题意: 现在有一个n*20的棋盘,上面有一些棋子,双方每次可以选择一个棋子把它移动到其右边第一 ...

随机推荐

  1. 第四章 dubbo内核之aop源码解析

    ExtensionLoader<Protocol> loader = ExtensionLoader.getExtensionLoader(Protocol.class); final P ...

  2. 一种模块化开发的目录结构和部署tips

    开发环境 开发态目录结构类似: 然后用express的static,将上下文映射到static那级目录上,比如访问: http://ip:5000/employee/employeeList.html ...

  3. 解决Keyboard遮盖输入的几种办法

    一般来说,键盘遮挡主要有这么几种情况,一个是遮住UITextView,还有就是遮住UITextField,一般来说,比较推荐在UIScrollView或者UITableView里加入textfield ...

  4. C#,深入浅出全接触(一)

    一.什么是 C#? C# 是由Microsoft开发的一种新型编程语言,由于它是从C和C++ 中派生出来的,因此具有C++的功能.同时,由于是Microsoft公司的产品,它又同 VB一样简单.对于w ...

  5. 解剖android中的闹钟app 一

    首先,看一看android市场上有哪些主流的闹钟app了,我们来进行一个简单的评测: 一.正点闹钟 这是一款源自金山技术的闹钟app,其主力创始团队都是来自于金山,其装机量,下载量都是排名第一.老样子 ...

  6. java中两种发起POST请求,并接收返回的响应内容的方式  (转)

    http://xyz168000.blog.163.com/blog/static/21032308201162293625569/ 2.利用java自带的java.net.*包下提供的工具类 代码如 ...

  7. 转: Xshell鼠标选中,终端立即中断(CTRL-C)的问题

    转自: https://nkcoder.github.io/2014/05/05/xshell-select-interrupt-dict/ Xshell选中文字复制时中断 在Xshell中设置了“自 ...

  8. jquery animate()背景色渐变的处理

    jquery animate函数不能处理背景色渐变,需要使用jquery.color插件 gitHub地址:https://github.com/jquery/jquery-color/ 使用代码: ...

  9. (纪录片)科学的故事:权力、证据与激情 The Story Of Science: Power, Proof And Passion

    简介: 导演: 纳特·沙曼编剧: 纳特·沙曼主演: Michael J. Mosley类型: 纪录片官方网站: www.bbc.co.uk/programmes/b00s9mms制片国家/地区: 英国 ...

  10. cyml

    bin/kafka-topics.sh --create --replication-factor 1 --partitions 1 --topic mc_logger2 --zookeeper lo ...