牛客编程巅峰赛S1第10场

1. 黄金&钻石

A. 牛牛排队
牛客编程巅峰赛S1第10场_第1张图片

  • tips :用一行代码完成向上取整
 /*即进行向上取整
 int numOfround = (a[i]-i)/n;
 if((a[i]-i)%n != 0)
 numOfround++;
 */
 //用一行代码进行向上取整为
 int numOfround = (a[i]-i+n-1)/n;

B. 石头、剪刀、布(二)
【贪心】
能赢的尽量赢,能平的尽量平,最后算输了多少场

public int Highestscore (int n, int p1, int q1, int m1, int p2, int q2, int m2) {
        // write code here
        int w1 = Math.min(p1,q2);
        int w2 = Math.min(q1,m2);
        int w3 = Math.min(m1,p2);
         
        p1 -= w1;
        q2 -= w1;
        q1 -= w2;
        m2 -= w2;
        m1 -= w3;
        p2 -= w3;
         
        int l1 = Math.min(p1,m2);
        int l2 = Math.min(q1,p2);
        int l3 = Math.min(m1,q2);
         
        return w1+w2+w3-l1-l2-l3;
         
}

2. 青铜&白银

A. 石头、剪刀、布(一)

public int Mostvictories (int n, int p1, int q1, int m1, int p2, int q2, int m2) {
        // write code here
        int res = Math.min(p1,q2)+Math.min(q1,m2)+Math.min(m1,p2);
        
        return res;
        
 }

你可能感兴趣的:(牛客编程巅峰赛S1第10场)