ZOJ - 3529 A Game Between Alice and Bob 数论+博弈

Qt制作大数据可视化大屏展示电子看板 Qt制作大数据可视化大屏展示电子看板 解决当前最火的大数据可视化大屏展示,整个项目通过Qt开发,集成了QML/QChart/ECharts及自定义控件等模块,所有的可视化控件都可以集成到其中。可以随意增加和减少模块,各个模块可以随意拖拽,整体可以个性化布局。模块标题栏可自定义,包括标题文本信息、文本颜色、宽度/高度、背景颜色、按钮个数等功能,满足各个样式需求。 实例中主要展示了现成的一些仪表盘... 阅读详情

题目:有N堆石头,每次选中某一堆,把数量替换成原先的因子。全部为1则结束。

思路:每个数都有一定数量的质因子数目,将其替换成因子,就相当于拿走了几个质因子,就转换成了NIM博弈,每堆石子的个数为该数的质因子的数目。

代码:


#pragma comment(linker, "/STACK:1024000000,1024000000")
#include<iostream>
#include<algorithm>
#include<ctime>
#include<cstdio>
#include<cmath>
#include<cstring>
#include<string>
#include<vector>
#include<map>
#include<set>
#include<queue>
#include<stack>
#include<list>
#include<numeric>
using namespace std;
#define LL long long
#define ULL unsigned long long
#define INF 0x3f3f3f3f
#define mm(a,b) memset(a,b,sizeof(a))
#define PP puts("*********************");
template<class T> T f_abs(T a){ return a > 0 ? a : -a; }
template<class T> T gcd(T a, T b){ return b ? gcd(b, a%b) : a; }
template<class T> T lcm(T a,T b){return a/gcd(a,b)*b;}
// 0x3f3f3f3f3f3f3f3f
//0x3f3f3f3f

const int maxn=5e3+50;
bool isprime[maxn];
int prime[maxn],tol;
int sg[5000050];
void make_prime(int n){
    for(int i=0;i<=n;i++)
        isprime[i]=true;
    isprime[0]=isprime[1]=false;
    tol=0;
    for(int i=2;i<=n;i++){
        if(isprime[i])
            prime[tol++]=i;
        for(int j=0;j<tol;j++){
            if(i*prime[j]<=n)
                isprime[i*prime[j]]=false;
            else
                break;
            if(i%prime[j]==0)
                break;
        }
    }
}
int get_sg(int n){
    if(sg[n]!=-1)
        return sg[n];
    int x=n,cnt=0;
    for(int i=0;i<tol&&prime[i]*prime[i]<=n;i++){
        if(n%prime[i]==0){
            while(n%prime[i]==0){
                cnt++;
                n/=prime[i];
            }
        }
    }
    if(n>1)
        cnt++;
    sg[x]=cnt;
    return sg[x];
}
int arr[100050];
int main(){

    int cas=0,n,x;
    make_prime(maxn-5);
    mm(sg,-1);
    while(~scanf("%d",&n)){
        int ans=0;
        for(int i=1;i<=n;i++){
            scanf("%d",&x);
            arr[i]=x;
            get_sg(x);
            ans=(ans^sg[x]);
        }
        if(ans>0){
            int id=0;
            for(int i=1;i<=n;i++){
                int SG=(ans^sg[arr[i]]);
                x=sg[arr[i]];
                if(x>=SG){
                    id=i;
                    break;
                }
            }
            printf("Test #%d: Alice %d\n",++cas,id);
        }
        else
            printf("Test #%d: Bob\n",++cas);
    }
    return 0;
}



SAP_MM模块采购价格确定控制简介 SAP MM模块采购价格确定控制是采购管理中的关键功能,系统通过"价格确定日期"判断条件记录有效性并带出正确价格。文章分析了四种常见业务场景及其对应的价格确定方案:普通采购订单(创建日期)、长期合同(交货日期)、特殊业务(手动输入)和接口下单(系统传入)。详细介绍了配置方法和前台操作步骤,并提供了不同业务类型对应的推荐控制方式汇总表。通过合理设置价格确定日期控制,企业可以确保采购价格准确性,满足各种复杂业务场景下价格管理的需求,从而提高采购管理效率和成本控制能力。 阅读详情

相关推荐

drm 之modes

#define _GNU_SOURCE #include <errno.h> #include <fcntl.h> #include <stdbool.h> #include <stdint.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <sys/mman.h> #include <time.h&...

u012794472的专栏 3716

zoj3529

A Game Between Alice and Bob Time Limit: 5 Seconds Memory Limit: 262144 KB Alice and Bob play the following game. A series of numbers is written on the blackboard. Alice and Bob take turns

野生的声威的专栏 551

对话系统简介

《文本上的算法》学习笔记1、问答型1.1、基于语义分析的方法1.2、基于信息抽取的方法1.3、端对端的方法2、任务型2.1、生成式模型( Generative Model )2.2、判别式模型( Discrimitive Model )2.3、规则系统3、闲聊型3.1、规则方法3.2、生成模型3.3、检索方法 个人认为NLP领域最难的方向可以说是阅读理解与文本生成/摘要,而对话系统,尤其是闲聊常常...

盘一哈nlp 6750

zoj 3529 博弈SG

理解当b[i] > b[i]^ans 为必败状态#include #include #include using namespace std; #define N 100005 #define MAXN 50000 int a[N+100],b[N+100],n; int prime[MAXN+4],cnt,isprime[MAXN+5]; int cal(int obj) {

Jackyguo1992的专栏 1259

STM32CubeMX+Keil5实战:手把手教你用STM32F103C8T6开发扫地机器人(附完整代码)

本文详细介绍了如何使用STM32F103C8T6开发智能扫地机器人,从STM32CubeMX配置到Keil5代码实现的全过程。涵盖硬件选型、时钟树配置、GPIO外设设置、电机驱动、超声波测距及自动避障算法等核心内容,并提供完整代码示例,助力开发者快速掌握智能硬件开发技巧。

weixin_30329623的博客 81

Benchmark系列——UnixBench测试项深度解析与性能优化指南

本文深度解析UnixBench基准测试套件的各项测试原理,包括Dhrystone、Whetstone、系统调用、进程管理、IPC及文件I/O等核心测试项。通过详细的测试项分析,指导用户解读测试报告,并提供针对性的内核参数调整、编译优化及系统配置实战指南,帮助用户精准定位并优化系统性能瓶颈。

weixin_29230901的博客 275

zoj 3529 Nim博弈

题目:这里2333 题目的意思是给你若干个数字,两个游戏者轮流操作,每次可以将该数变为一个小于当前的一个约数,无法操作的游戏者fail。 和其他的博弈题目大同小异吧。 不同点有两个,逐一分析吧。 一、每次改变一个数只能改变为小于当前数的约数,所以相对来说Sg函数值得求法有点不同哦。自己打个表就可以发现这个题目的Sg函数值是该数的除了1以为的约数的个数。这样我们可以用一点数论

twh233的算法blog 332

threekingdoms.txt中文三国演义下载及实现人物出场统计

threekingdoms.txt全文下载:https://python123.io/resources/pye/threekingdoms.txt CalThreeKingdomsV1.py: #CalThreeKingdomsV1.py import jieba txt = open("threekingdoms.txt", "r", encoding = "utf-8").read() words = jieba.lcut(txt) counts = {} for word in words:

ZYYRWish_97的博客 1万+

Zoj 3529 A Game Between Alice and Bob

1017 #include #include int SG[5100000]; int num[110000]; void fun() { __int64 i,j,tmp; for(i=2;i<=5000000;i++) { if(SG[i]==0) { for(j=i;j<=5000000;j+=i) { tmp=j; while(!

Magic__ 1427

手把手教你用Matlab/Simulink搭建PMSM的SMO无感FOC仿真(附相位补偿与离散化代码)

本文详细介绍了基于滑模观测器(SMO)的永磁同步电机(PMSM)无传感器FOC控制方法,通过Matlab/Simulink平台实现从理论到实践的完整流程。内容涵盖SMO核心原理、离散化处理、转子位置估算与相位补偿技术,以及双闭环控制系统搭建,为工程师提供了一套完整的无传感器控制解决方案。

weixin_27038245的博客 252

邮件伪造和SPF

之前看了下邮件伪造觉得挺有意思的,所以看了下邮件伪造的东西,下面简单的总结了一下,如果有不妥的地方还望大佬们提出来。 1. 什么是SPF SPF是 Sender Policy Framework 的缩写,一种以IP地址认证电子邮件发件人身份的技术,是为了防范垃圾邮件而提出来的一种DNS记录类型,它是一种TXT类型的记录。 接收邮件方会首先检查域名的SPF记录,来确定发件人的IP地址是否被包含在SP...

SunJ3t的菠萝屋 2447

HDU 5054 Alice and Bob

水------  两个人的坐标系不同,如果都走到(x,y)能够碰面的话,只有一种可能:在广场矩形的中心位置。 即: 2*x == N 并且 2*y == M。 #include #include #include using namespace std; int main() { int M,N,x,y; while(scanf("%d%d%d%d",&M,&N,&x,&y

小马的博客 511

Unity URP炫彩干涉效果:从薄膜干涉原理到Shader Graph实现

薄膜干涉是一种常见的光学现象,指光在透明薄膜上下表面反射后产生干涉,形成彩虹色条纹。其原理基于光程差导致的相长与相消干涉,不同波长的光被选择性增强或削弱。在计算机图形学中,这一物理现象被抽象为高效的数学模型,通过Shader编程实现动态色彩变化,为游戏和实时渲染带来独特的视觉表现力。技术实现上,常采用正弦函数结合噪声纹理来模拟色彩循环,利用法线与视角点积作为基础变量,加入噪声扰动模拟厚度不均,实现随视角变化的虹彩效果。在Unity URP渲染管线中,可通过Shader Graph可视化工具或手写HLSL代码

weixin_34026997的博客 292

ZOJ 3529 A Game Between Alice and Bob (数论+SG博弈)

转载请注明出处,谢谢 http://blog.youkuaiyun.com/ACM_cxlove?viewmode=contents           by---cxlove 题意:有N堆石头,每次选中某一堆,把数量替换成原先的因子。全部为1则结束。 http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=4464 乍一看,SG博弈

窝不是爱酱,喵~~~~ 2668

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

ZOJ 3529 A Game Between Alice and Bob

http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3529Alice and Bob play the following game. A series of numbers is written on the blackboard. Alice and Bob take turns choosing one of the nu

long-long-ago 495

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

A Game Between Alice and Bob(zoj 3529)

题目戳这里 题目大意是:给你n个数字,两个人lunl

23333333 657

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

ZOJ - 3529 A Game Between Alice and Bob 尼姆博弈+质因子个数

题目链接:点击查看 题意:给出n个数,每轮可以把某个数变成他的因子,先手获胜输出Alice 和 他第一次可以操作的最靠前的数字 题解:把这个数变成他的因子,这不就相当于,除掉了几个质因数吗,这不就是取掉几个石子吗,这不就是尼姆博弈吗,为啥当时脑子瓦特了。。。。 #include<bits/stdc++.h> using namespace std; typedef long l...

还我笑颜 221

ZOJ 3529 A Game Between Alice and Bob (分解质因数+Nim博弈+输出方案)

A Game Between Alice and BobTime Limit:5 Seconds Memory Limit:262144 KB Alice and Bob play the following game. A series of numbers is written on the blackboard. Alice and Bob take turns c...

272

ZOJ 3529 A Game Between Alice and Bob(博弈论-sg函数)

ZOJ 3529 A Game Between Alice and Bob(博弈论-sg函数) 题目大意: 给定n个数字,两个人轮流玩游戏,把这n个数字变成n的因子(不包含本身),最后全变成1就赢了,问你谁会赢,如果Alice赢了,把第一步选择的那一个数字的序号输出,如果有多种方案,输出序号小的。 解题思路: sg[1]=0; sg[2]=mex{sg[1]}=1; sg[3]=mex{sg[1]}=1; sg[4]=mex{sg[2],sg[1]}=2; sg[5]=mex{sg[1]}=1; sg[

炒饭君的博客 1273

ZOJ 3529 A Game Between Alice and Bob 博弈好题

A Game Between Alice and Bob Time Limit: 5 Seconds      Memory Limit: 262144 KB Alice and Bob play the following game. A series of numbers is written on the blackboard. Alice and Bob take tur

hnust_xiehonghao的专栏 1892

Zoj 3529 A Game Between Alice and Bob (数学_博弈)

题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=4464 题目大意:给定n个数,每一步都可以将某个数替换为它的因子,但不能替换为本身,两个人轮流走,直到某个人走不了他就输了。问最后谁能赢,如果先手胜输出第一步。n 解题思路:数论+Nim。初看起来好像无从下手,但是细想:本题要找它的因

1373

ZOJ-#3529 A Game Between Alice and Bob(Nim和+素数因子)

题目大意:两个人完游戏,有n堆,每次只能拿去一堆使得剩下的是该堆初始数的因子,最后所有堆乘积为1则胜。         解题思路:这与Nim游戏很类似,需要转化一下。Nim游戏要求任意一堆取任意一个。而这里剩下的必须是数的因子,因此,可以将每堆数置换为因子的数量,这样问题就转化为求Nim和的问题了。详见code。         题目来源:http://acm.zju.edu.cn/onlin

VoidSun 839

zoj3529 A Game Between Alice and Bob 博弈

N个数字,两人轮流操作,每次操作ke

Broken Wings 701

ZOJ 3529 - A Game Between Alice and Bob(素因子+博弈)

A Game Between Alice and Bob Time Limit: 5 Seconds      Memory Limit: 262144 KB Alice and Bob play the following game. A series of numbers is written on the blackboard. Alice and Bob take tur

coco430的专栏 710

ZOJ 3529 A Game Between Alice and Bob(SG)

                                                                         A Game Between Alice and Bob                                                       Time Limit: 5 Seconds      Memory Limit: 26...

shyoldman的博客 292
上一篇: ZOJ - 2686 Cycle Game
下一篇: ZOJ - 3591 Nim
我不会额
博客等级 码龄11年 2粉丝 173原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值