石头、剪刀、布I
100分解法
我们要尽可能多的赢,无非就是让牛牛现有牌的每一类赢得更多即可。
对于每个牛牛的石头,能赢每个牛妹的剪刀,所以每个牛牛的石头能赢的局数是
对于每个牛牛的剪刀,能赢每个牛妹的布,所以每个牛牛的剪刀能赢的局数是
对于每个牛牛的布,能赢每个牛妹的石头,所以每个牛牛的布能赢的局数是
所以一共能赢的局数即为
时间复杂度o(1),空间复杂度o(1)。
代码如下:
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
return min(p1,q2)+min(q1,m2)+min(m1,p2);
}
};
查看6道真题和解析

