news 2026/4/20 16:53:15

华为OD机试真题 新系统2026-04-15 C++实现【小猫钓鱼纸牌游戏】

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
华为OD机试真题 新系统2026-04-15 C++实现【小猫钓鱼纸牌游戏】

目录

题目

思路

Code


题目

有两名玩家甲和乙,他们玩一种“小猫钓鱼”扑克牌游戏。扑克牌为A、2、3、....J、Q、K,不考虑花色都用1-13来表示,然后给甲,乙两人各发n张牌,按给定顺序排成队列,这些牌背面朝上,正面朝下放置,队列的第一个元素是背面的第一张牌。
游戏规则如下:
1.出牌与收牌
->初始出牌时,甲先出牌,打出的牌正面朝上放在桌面的最底部,然后乙出牌,正面朝上放在甲的牌张上面,然后甲乙轮流出牌,直到触发收牌或者任意一个玩家牌出完。
->如果玩家出牌后触发了收牌,则把收到的一摞牌作为整体翻面后,背面朝上正面朝下放到现有牌的底部,然后当前收牌的玩家继续出牌。
2.收牌规则
->若当前打出的牌点数,与桌面上之前某张牌的点数相同,则触发收牌,收牌的范围是两张相同点数牌之间的所有牌(含这两张)。若当前打出的牌是J,并且此时桌面上已有至少一张牌(不含当前这张),则当前玩家触发收牌,收牌的范围是桌面上的所有牌。若桌面上原本没有牌,则J仅作为普通牌放到桌面
3.游戏结束条件
->若某位玩家在自己回合开始时已经没有牌可出,则游戏立即结束,如果此时对方还有余牌,则对方获胜,如果对方也无牌,则平
局。
->若在模拟过程中,出牌总次数超过一个上限(10000次)仍未结束,则认为游戏进入死循环,判定为平局。
输入描述
甲的初始牌队列和乙的初始牌队列,甲乙初始手牌数量相等,均为整数n(1≤n≤100)
输出描述
一方获胜时,输出获胜方手中背面朝上最上方的那张牌的数值。若平局,如果桌面无牌则输出0,否则输出当前

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/20 16:53:14

如何快速掌握fre:ac音频转换器:新手完全指南

如何快速掌握fre:ac音频转换器:新手完全指南 【免费下载链接】freac The fre:ac audio converter project 项目地址: https://gitcode.com/gh_mirrors/fr/freac 如果你正在寻找一款真正免费、功能强大且跨平台的音频转换工具,那么fre:ac音频转换器…

作者头像 李华
网站建设 2026/4/20 16:50:15

7款思源宋体CN字体:免费开源中文字体完整使用指南

7款思源宋体CN字体:免费开源中文字体完整使用指南 【免费下载链接】source-han-serif-ttf Source Han Serif TTF 项目地址: https://gitcode.com/gh_mirrors/so/source-han-serif-ttf Source Han Serif CN(思源宋体CN)是Google与Adobe…

作者头像 李华
网站建设 2026/4/20 16:49:19

wilson-cowen式神经元的时间常数代表什么?

wilson-cowen式神经元示例: r是神经元放电率,I是输入电流,外面套的是电流转放电率函数。τr就是时间常数,它反映了ri到达外界输入的时间。 推导: 简化问题,假设外界输入为常数r*,原式为τr*dr…

作者头像 李华
网站建设 2026/4/20 16:46:44

链表反转写法

class Solution {public:ListNode* reverseList(ListNode* head) {ListNode *prev nullptr, *curr head;while (curr) {ListNode *next curr->next;curr->next prev;prev curr;curr next;}return prev;}};

作者头像 李华