您现在的位置是:首页 > 编程 > 

联想算法题

2025-07-27 06:53:07
联想算法题 联想算法题-石头剪刀布问题描述 剪刀石头布是一种常见的猜拳游戏,当玩家人数为两人时,它的规则如下:在每一轮中,双方分别同时给出石头(Rock)、剪刀(Scissor)和布(Paper)这三种手势中的一种。石头战胜剪刀;剪刀战胜布;布战胜石头。若双方给出的手势一样则本轮平局,双方分数不变;否则胜方积1分。 现在Alice和Bob想进行若干轮猜拳游戏,但他们不想逐轮进行游戏,于是决定分

联想算法题

联想算法题-石头剪刀布

问题描述 剪刀石头布是一种常见的猜拳游戏,当玩家人数为两人时,它的规则如下:在每一轮中,双方分别同时给出石头(Rock)、剪刀(Scissor)和布(Paper)这三种手势中的一种。石头战胜剪刀;剪刀战胜布;布战胜石头。若双方给出的手势一样则本轮平局,双方分数不变;否则胜方积1分。 现在Alice和Bob想进行若干轮猜拳游戏,但他们不想逐轮进行游戏,于是决定分别在纸上写下他们每一轮要出的手势。作为裁判的你需要根据他们所写下的手势判断他们的比分是多少。 输入描述 第一行是一个正整数T,表示他们想进行的轮数。 第二行包含T个空格隔开的字符串s_1, s_2, …, s_T,其中s_i表示Alice写下的第i轮要出的手势。 第三行包含T个空格隔开的字符串t_1, t_2, …, t_T,其中t_i表示Bob写下的第i轮要出的手势。 所有的s_i和t_i均是”Rock”,”Scissor”,”Paper”中的一种。

输出描述 输出两个用空格隔开的整数x y,其中x表示Alice的得分,y表示Bob的得分。

输入样例1 Rock Rock Rock Rock Paper Scissor

输出样例1 1 1

数据范围和说明 0%的数据保证:<=T<=10 80%的数据保证:<=T<=100 100%的数据保证 :<=T<=500

算法思路:

这个题的思路模拟,简单的过程模拟

代码语言:javascript代码运行次数:0运行复制
#include<iostream>
using namespace std;
#include<vector>

int main()
{
    int t;
    cin >> t;
    vector<string> a;
    vector<string> b;
    string str;
    int res1 = 0;
    int res2 = 0;
    for (int i = 0; i < t; ++ i)    
    {
        cin >> str;
        a.push_back(str);
    }
    for (int i = 0; i < t; ++ i)    
    {
        cin >> str;
        b.push_back(str);
    }
    for (int i = 0; i < t; ++ i)
    {
        if (a[i] == b[i]) continue;
        else if (a[i] == "Rock" && b[i] == "Paper") res2 ++;
        else if (a[i] == "Scissor" && b[i] == "Rock") res2 ++;
        else if (a[i] == "Paper" && b[i] == "Scissor") res2 ++;
        else res1 ++;
    }
    cout << res1 << " " << res2;
    return 0;
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。 原始发表:202-12-25,如有侵权请联系 cloudcommunity@tencent 删除int数据算法字符串游戏

#感谢您对电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格的认可,转载请说明来源于"电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格

本文地址:http://www.dnpztj.cn/biancheng/1152583.html

相关标签:无
上传时间: 2025-07-20 02:17:00
留言与评论(共有 10 条评论)
本站网友 bigbang吧
2分钟前 发表
当玩家人数为两人时
本站网友 西部国际博览会
3分钟前 发表
双方分别同时给出石头(Rock)
本站网友 有源晶振
2分钟前 发表
简单的过程模拟代码语言:javascript代码运行次数:0运行复制#include<iostream> using namespace std; #include<vector> int main() { int t; cin >> t; vector<string> a; vector<string> b; string str; int res1 = 0; int res2 = 0; for (int i = 0; i < t; ++ i) { cin >> str; a.push_back(str); } for (int i = 0; i < t; ++ i) { cin >> str; b.push_back(str); } for (int i = 0; i < t; ++ i) { if (a[i] == b[i]) continue; else if (a[i] == "Rock" && b[i] == "Paper") res2 ++; else if (a[i] == "Scissor" && b[i] == "Rock") res2 ++; else if (a[i] == "Paper" && b[i] == "Scissor") res2 ++; else res1 ++; } cout << res1 << " " << res2; return 0; }本文参与 腾讯云自媒体同步曝光计划
本站网友 virtualbox下载
21分钟前 发表
其中t_i表示Bob写下的第i轮要出的手势
本站网友 退出
6分钟前 发表
y表示Bob的得分
本站网友 宜宾美食
12分钟前 发表
如有侵权请联系 cloudcommunity@tencent 删除前往查看int数据算法字符串游戏
本站网友 全国被执行人信息
7分钟前 发表
输出描述 输出两个用空格隔开的整数x y
本站网友 香砂六君丸
21分钟前 发表
s_2
本站网友 北京商务中心
6分钟前 发表
现在Alice和Bob想进行若干轮猜拳游戏