题目

牛牛和牛妹进行石头剪刀布游戏。游戏规则如下:
两个人进行石头剪刀布大战,开始时会发给每个人 张牌,然后两人进行 次剪刀石头布大战,每一次两人分别选择自己的 张牌中的一张,打出,每张牌只能用一次。
开始发给牛牛的 张牌里,有 张石头牌, 张剪刀牌, 张布牌。
开始发给牛妹的 张牌里,有 张石头牌, 张剪刀牌, 张布牌。
请问在知道牛妹每一轮出什么牌的情况下,牛牛最多能赢多少局比赛?

解题思路

牛妹出石头牌,牛牛出布牌,牛牛赢的次数为
牛妹出剪刀牌,牛牛出石头牌,牛牛赢的次数为
牛妹出布牌,牛牛出剪刀牌,牛牛赢的次数为

C++代码

class Solution {
public:
    /**
     * ​请返回牛牛能赢的最多局数
     * @param n int整型 
     * @param p1 int整型 
     * @param q1 int整型 
     * @param m1 int整型 
     * @param p2 int整型 
     * @param q2 int整型 
     * @param m2 int整型 
     * @return int整型
     */
    int Mostvictories(int n, int p1, int q1, int m1, int p2, int q2, int m2) {
        // write code here
        int cnt = min(p1, q2) + min(q1, m2) + min(m1, p2);
        return cnt;
    }
};