• 网易互联网2015 在线笔试(2)


    题目

    题目大意叙述如下:

    现有 AB 两队进行篮球比赛,位置 d 为三分线,在三分线外进球则得 3 分,三分线内进球则得 2 分;

    A 队整场进球 n 个,位置分别为 a1,a2,...an

    B 队整场进球 m 个,位置分别为 b1,b2,...bm

    主人公小明有权设立三分线位置,他想让 A 队尽可能多的得分,以拉大 AB 两队的得分差距。问将 d 设置为多少可以使得 Score(A)Score(B) 分差最大?

    分析

    此题要求 Score(A)Score(B) 的最大值,就要保证 A 队得分尽量高,也就是说要使得其三分球的数目尽可能的多。现在以 A 队投篮的位置为基准,将三分线设立为其从小到大的逐个位置,求分差,找到最大分差值,则该位置就是三分线设立点。

    程序实现

    #include <iostream>
    #include <cstdlib>
    #include <vector>
    #include <algorithm>
    using namespace std;
    int getCount(vector<int> &Bd, int m, int d)
    {
        int count = 0;
        for (int i = 0; i < m; i++)
        {
            if (Bd[i] < d)
                count++;
        }
        return count;
    }
    
    int maxScore(vector<int> &Ad, int n, vector<int> &Bd, int m)
    {
    
        //将AB两队的,投篮点排序
        sort(Ad.begin(), Ad.end());
        sort(Bd.begin(), Bd.end());
        int max = 0 , dis = 0;
        for (int i = 0; i < n; i++)
        {
            //将三分点设置为当前
            int d = Ad[i];
            //求A队得分
            int scoreA = 3 * (n - i) + 2 * i;
    
            //求B队得分
            int num = getCount(Bd, m, d);
            int scoreB = 2 * num + 3 * (m - num);
    
            //求临时分差
            int tmp = scoreA - scoreB;
            if (tmp > max)
            {
                max = tmp;
                dis = d;
            }//if
        }
        return max;
    }
    
    int main()
    {
        int n, m,tmp;
        vector<int> Ad, Bd;
    
        cin >> n;
        for (int i = 0; i < n; i++)
        {
            cin >> tmp;
            Ad.push_back(tmp);
        }
        cin >> m;
        for (int i = 0; i < m; i++)
        {
            cin >> tmp;
            Bd.push_back(tmp);
        }
    
        cout << maxScore(Ad, n, Bd, m) << endl;
        system("pause");
        return 0;
    }
  • 相关阅读:
    网络配置bridge
    ng-zorro等组件默认样式的修改
    正则表达式(/[^0-9]/g,'')中的"/g"是什么意思?
    ||与&&的返回值
    JS判断对象是否存在的10种方法总结
    undefined与null的区别
    前端页面布局中水平、垂直居中问题
    MAMP VirtualHost 无效 配置踩坑
    问题锦选
    Windows相关要点记录
  • 原文地址:https://www.cnblogs.com/shine-yr/p/5214855.html
Copyright © 2020-2023  润新知