鱼C论坛

 找回密码
 立即注册
查看: 2342|回复: 10

急求帮助,拿石子问题

[复制链接]
发表于 2022-5-29 21:37:32 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
一堆个数为n的石子,Alice和Bob轮流取。
Alice一次能取[1,p]个石子,Bob一次能取[1,q]个石子。
拿到最后一个石子的人赢。
如果Alice必胜,返回1
如果Bob必胜,返回-1
如果没有人有必胜策略,返回0
用C语言编写,谢谢各位大佬
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2022-5-29 21:43:06 | 显示全部楼层
示例:
输入:8,3,3 输出:-1
输入:3,4,2 输出:1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-5-30 10:31:25 | 显示全部楼层
本帖最后由 jhq999 于 2022-5-30 10:51 编辑
洛无极 发表于 2022-5-29 21:43
示例:
输入:8,3,3 输出:-1
输入:3,4,2 输出:1

int main()////////必胜的诀窍是每次给对方剩下对方最大取值加1的整数倍
{
        int n=0,a=0,b=0;
        scanf("%d,%d,%d",&n,&a,&b);
        if(n<=a)printf("a");
        else if(a>b)printf("a");
        else if(a<b)printf("b");
        else
        {
                if(n%(a+1))printf("a");
                else
                        printf("b");
        }
        return 0;
}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-5-30 20:29:36 | 显示全部楼层

兄弟,能按照【1,q】,【1,p】输入,-1,1输出吗?你的能执行,但我萌新,不会改,麻烦你了,谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-5-30 21:06:16 | 显示全部楼层
洛无极 发表于 2022-5-30 20:29
兄弟,能按照【1,q】,【1,p】输入,-1,1输出吗?你的能执行,但我萌新,不会改,麻烦你了,谢谢
[code]
int main()////////必胜的诀窍是每次给对方剩下对方最大取值加1的整数倍
{
        int n=0,a=0,b=0;
        scanf("%d,%d,%d",&n,&a,&b);
        if(n<=a)printf("a");
        else if(a>b)printf("1");
        else if(a<b)printf("-1");
        else
        {
                if(n%(a+1))printf("1");
                else
                        printf("-1");
        }
        return 0;
}
[/code]
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-5-30 21:12:06 | 显示全部楼层

谢了,但这道题不需要定义p、q什么的吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-5-30 21:14:38 | 显示全部楼层

而且这个代码,输入3 4 2 ,输出的结果也为-1,我试了其他得数,可能是巧合,但所有输出结果都是-1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-5-30 22:43:31 | 显示全部楼层
本帖最后由 jhq999 于 2022-5-30 22:46 编辑
洛无极 发表于 2022-5-30 21:14
而且这个代码,输入3 4 2 ,输出的结果也为-1,我试了其他得数,可能是巧合,但所有输出结果都是-1{:5_10 ...


示例:
输入:8,3,3 输出:-1
输入:3,4,2 输出:1


输入3,4,2不是3 4 2 输入之间的符号要和scanf里的对应
输出是a,你把那个printf("a");改成printf("1");,我忘改了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-5-30 22:49:23 | 显示全部楼层
jhq999 发表于 2022-5-30 22:43
示例:
输入:8,3,3 输出:-1
输入:3,4,2 输出:1

谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-5-30 22:52:53 | 显示全部楼层
洛无极 发表于 2022-5-30 21:12
谢了,但这道题不需要定义p、q什么的吗?

1不用定义,p就是a,q就是b
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-5-30 23:28:31 | 显示全部楼层
jhq999 发表于 2022-5-30 22:52
1不用定义,p就是a,q就是b

我已经改好了,万分感谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-10-8 02:23

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表