商汤算法今晚笔试编程题 1+1+0.6+0

1.  题目大意:批处理任务,求最短时间
#include <algorithm>
#include <iostream>
#include <vector>
using namespace std;

int main()
{
    int n, c;
    cin >> n >> c;

    vector<int> t(n);

    for(int i = 0; i < n; ++i) {
        cin >> t[i];
    }

    sort(t.begin(), t.end());

    int res = 0;

    for(int i = n - 1; i >= 0; i -= c) {
        res += t[i];
    }

    cout << res << endl;
    return 0;
}
2. 题目大意:将 n 个整数变成 n 的一个排列所需要的操作次数。。。
#include <algorithm>
#include <iostream>
#include <vector>
using namespace std;

int main()
{
    int n;
    cin >> n;

    vector<int> t(n);

    for(int i = 0; i < n; ++i) {
        cin >> t[i];
    }

    sort(t.begin(), t.end());

    int res = 0;

    for(int i = 0; i < n; ++i) {
        int diff = t[i] - (i + 1);
        res += diff >= 0 ? diff : -diff;
    }

    cout << res << endl;
    return 0;
}
3. 题目大意:两人比赛。。。。。使用贪心算法。60%通过率。。。
#include <cmath>
#include <iostream>
#include <vector>
using namespace std;

int main()
{
    int n;
    cin >> n;

    vector<double> s(n);

    for(int i = 0; i < n; ++i) {
        double tmp;
        cin >> tmp;
        double pi = 1.0 / (1.0 + exp(-tmp));
        if((i + 1) & 1) {
            double x = log(1 - pi);
            if(isinf(x)) {
                x = -tmp;
            }
            s[i] = i + 1 + x;
        } else {
            double x = log(pi);
            if(isinf(x)) {
                x = tmp;
            }
            s[i] = i + 1 + x;
        }
    }

    double score1 = 0.0, score2 = 0.0;
    int i = 0, j = n - 1;
    bool who = 1; // 1: first person, 0: second person

    while(i <= j) {
        if(s[i] > s[j]) {
            if(who) {
                score1 += s[i];
            } else {
                score2 += s[i];
            }
            i++;
        } else {
            if(who) {
                score1 += s[j];
            } else {
                score2 += s[j];
            }
            j--;
        }
        who = ~who;
    }

    if(score1 > score2) {
        cout << "TZ" << endl;
    } else {
        cout << "xtz" << endl;
    }

    return 0;
}

4. 题目大意:太骇人了,冇揍!!!


#笔试题目##算法工程师##商汤科技#
全部评论
原题还有吗,给我也整一个
点赞 回复
分享
发布于 2019-08-19 21:01
冇揍?楼主哪里的
点赞 回复
分享
发布于 2019-08-19 21:03
阿里巴巴
校招火热招聘中
官网直投
1 + 1 + 0.7 + 0  老哥最后一题做了么= = 我做了40分钟愣是不知道怎么L对Y求导= = 推不出公式 就差这最后一步
点赞 回复
分享
发布于 2019-08-19 21:04
1+1+0.9+0.1 感觉商汤的题好考验智商
点赞 回复
分享
发布于 2019-08-19 21:06
1+1+0.8+0.5,最后一题超时了😂而且先写的编程题,选择题没空写了,蒙了至少一半
点赞 回复
分享
发布于 2019-08-19 21:09

相关推荐

点赞 7 评论
分享
牛客网
牛客企业服务