智力游戏(搬山游戏)
/****************************************
* File Name : game.c
* Creat Data : 2015.1.30
* Author : ZY
*****************************************/ /*智力游戏*/
/*搬山游戏*/
/*设有n座山,计算几何人为比赛的双方,轮流搬山。规定每次搬山
的数目不能超过k座,谁搬最后一座山谁输。
1.当:剩余山数目 -1<= 可移动的最大数k时,计算机要移(剩余山
数目-1),以便最后一座山留给人
2.对于任意正整数x,y,一定有:
0 <= x%(y+1)<= y在有n座山的情况下,计算机为了将最后一座山留
给人,而且要控制每次搬山数目不超过最大数k,它应搬山的数目要
满足:
(n-1)%(k+1)
如果算出结果是0,则规定只搬一座山,以防止冒进后发生问题。*/#include <stdio.h>
int main()
{int n,k,x,y,cc = 0,pc = 0,g = 1;printf("Move Mountain Game\n");printf("Game Begin\n");for(;;){printf("No.%2d game\n",g++);printf("……………………………………………………\n");printf("How many mountains are there?");scanf("%d",&n);if(!n){break;}printf("How many mountains are allowed to each time?");do{scanf("%d",&k);if(k > n||k < 1){printf("Repeat again!\n");}}while(k > n||k < 1);do{printf("How many mountains do you wish to move away?");scanf("%d",&x);if(x < 1||x > k||x > n){printf("illegal,again please!\n");continue;}n -= x;printf("There are %d mountains left now.\n",n);if(!n){printf("………………I win.You are failure.………………\n\n");cc++;}else{y = (n-1)%(k+1);if(!y){y = 1;}n -= y;printf("Computer move %d mountains away.\n",y);if(n){printf("There are %d mountains left now.\n",n);}else{printf("………………I am failure.You win.………………\n\n");pc++;}}}while(n);}printf("Games in total have been played %d.\n",cc+pc);printf("Your score is win %d,lose %d.\n",pc,cc);printf("My score is win %d,lose %d.\n",cc,pc);return 0;
}
智力游戏(搬山游戏)相关推荐
- c语言搬山游戏,C语言实现搬山游戏代码解析
问题描述 设有n座山,计算机与人作为比赛的双方,轮流搬山.规定每次搬山数不能超过k座,谁搬最后一座淮输.游戏开始时,计算机请人输入山的总数n和每次允许搬山的最大数k,然后请人开始,等人输入了需要搬走的 ...
- c语言做搬山游戏,C语言实现搬山小游戏,适合新手的项目实战,超易上手!
原标题:C语言实现搬山小游戏,适合新手的项目实战,超易上手! 问题描述 设有n座山,计算机与人作为比赛的双方,轮流搬山.规定每次搬山数不能超过k座,谁搬最后一座谁输. 游戏开始时,计算机请人输入山的总 ...
- C语言学习教程:搬山游戏开发源码
C语言学习教程:搬山游戏开发源码 #include<stdio.h> void main() {int n,k,x,y,cc,pc,g;clrscr();puts("****** ...
- 100个python算法超详细讲解:搬山游戏
[100个python算法超详细讲解]@谷歌学术 1.问题描述 设有n座山,计算机与人作为比赛的双方,轮流搬山.规定每次搬 山数不能超过k座,谁搬最后一座谁输.游戏开始时,计算机请人输入 山的总数n和 ...
- C语言实现搬山游戏,附上代码及解析
问题描述 设有n座山,计算机与人作为比赛的双方,轮流搬山.规定每次搬山数不能超过k座,谁搬最后一座淮输.游戏开始时,计算机请人输入山的总数n和每次允许搬山的最大数k,然后请人开始,等人输入了需要搬走的 ...
- c语言搬山游戏,C语言实例:搬山游戏
您可能感兴趣的话题: C语言 核心提示:设有n座山,计算机与人为比赛的双方,轮流搬山.规定每次搬山的数止不能超 过k座,谁搬最后一座谁输. 设有n座山,计算机与人为比赛的双方,轮流搬山.规定每次搬山的 ...
- 家用电脑配置_游戏搬砖必看教程,游戏工作室电脑如何配置
文章只针对新手对电脑硬件配置了解,大佬可直接关闭,电脑如何配置只代表个人观点! 想游戏搬砖赚钱,资金方面也有这个能力的小伙伴可能对手机开那么几个号无法满足,那么今天要说的就是如何利用电脑多开,来达到利 ...
- CSGO/steam游戏搬砖项目入行前必看知识点汇总(一)
CSGO/steam游戏搬砖项目入行前必看知识点汇总(一) CSGO武器皮肤的入门级知识点,入行前一定要看 CSGO武器皮肤有什么用以及如何分类?有多少人已经彻底搞清楚了这个问题?今天这篇文章是专为新 ...
- 想驯服上古神兽吗?VR游戏《山海猎人》已登陆Viveport
这款游戏以东方末日为题材,<山海经>中的奇异鸟兽.山川湖泊幻化其中. 打僵尸类VR游戏玩腻了,找不到具有新意的游戏IP,不妨试一试今天登陆Viveport的一款游戏--<山海猎人&g ...
最新文章
- c语言枚举3位数相加等于10,C语言 联合和枚举
- 2018-1-20:左移和右移运算以及和(无符号右移)的区别以及位运算的小题目...
- 使用PySpark搭建机器学习模型
- SQL 单一用户(解决)
- 米家zigbee传感器抓包_如果有一代,米家人体传感器2值得你去更换吗?
- iOS APP网络分析之rvictl(可以捕捉除了Wifi以外的网络类型)
- mySql学习笔记:比sql server书写要简单
- 视频编解码(十四):机顶盒调试编解码器显示总结
- python统计合格数_python—基本统计值计算
- 算法与数据结构面试题(6)-腾讯面试题
- 成长型思维——人不成熟的五大特征和高效能人士的七个习惯
- 用selenium验证唯品会登录
- 江城武汉,一座离开后会怀念的城市
- LeetCode-179
- 2022年护士考试知识强化巩固习题及答案
- 新手怎么开通抖音小店?详细操作步骤分享,建议收藏
- 2022年了,虚拟内存还是那个虚拟内存吗?
- 小甲鱼Python学习笔记之魔法方法
- java实现简单的银行存款取款系统
- Tensorflow应用之LSTM