360 2020.4.16笔试

360的笔试两个半小时,前面有20个行测题和40个专业题,后面两个编程题。不得不说,前面60个题难且耗费心力,我报的是机器学习岗,大多是C和机器学习的题目。而且我看错了编程题的数目,前面做的太快(好多蒙的),分配时间不均匀,是凉凉没错了。

编程题:

第一个题的思路是先找到最大的那个值的位置。既然是最大的了,如果m比最大的值的位置还大,说明前面肯定会被最大值干掉,那直接返回前面的比赛数目+m;如果m比较小,每次删掉前面的较小值,直到满足m或碰到最大值。


递归。

        if (n == 1)
            return 1.0 / (a0 + 1);
        double per = 0.0;
        for (int i = 0; i <= a0; i++) {
            per += (1.0 / (a0 + 1)) * computeper(n - 1, i);
        }

不过我也没AC,可以考虑优化,我感觉应该是时间超了。

原文地址:https://www.cnblogs.com/xym4869/p/12714489.html