Goldman Sachs 2020校招 Engineer岗

编程题

  1. 数组题
    一排人需要按照高矮顺序从小到大站。找出有多少个人站错了位置。
    public static int countStudents(List<Integer> height) {
        int res = 0;
        int n = height.size();
        if (n <= 1) return 0;
        List<Integer> copy = new ArrayList(height);
        Collections.sort(copy);
        for (int i = 0; i < n; i++) {
            if (copy.get(i) != height.get(i))
                res++;
        }
        return res;
    }
  1. 动态规划。用硬币凑钱原题。只不过改了描述,变成雨伞躲人,要求正好。
public static int getUmbrellas(int requirement, List<Integer> sizes) {
        int n = sizes.size();
        if (n == 0) return -1;
        Collections.sort(sizes);
        
        int[] dp = new int[requirement+1];
        dp[0] = 0;
        for (int i = 1; i <= requirement; i++)
            dp[i] = Integer.MAX_VALUE-10;
        
        for (int umbre: sizes) {
            if (umbre > requirement) break;
            for (int i = umbre; i <= requirement; i++) {
                dp[i] = Math.min(dp[i], dp[i-umbre] + 1);
            }
        }
        if (dp[requirement] >= Integer.MAX_VALUE-10)
            return -1;
        return dp[requirement];
    }

数学统计部分

在这里插入图片描述
C(52-16, 13) / C(52, 13) = 0.00363

在这里插入图片描述
题目并没说明顺子能不能包括j, q, k。我当时做题认为不包括,但是实际上包括。
而且A既可以出现在
4^5*10 / C(52, 5) = 10240/2,598,960 = 0.004
不能认为分子分母的花色可以抵消,就不考虑花色。这样做法是错误的。分母小了,有一些组合没有被考虑进去。

在这里插入图片描述
这一题的正确理解应该是在出现白鞋之前出现过黑鞋就行了,而不需要出现白鞋的前一次必须是黑鞋。如果按照这个理解,把满足条件的事件记为x,那么这道题实际上是在求P(x) = P(黑)+P(红,黑)+P(红,红,黑)+…,构成了一个等比数列。

P ( x ) = 1 / 2 ( 1 1 / 6 n ) 1 1 / 6 = 3 / 5 P(x) = \frac{1/2*(1 - 1/6^n)}{1-1/6} = 3/5
选A。

在这里插入图片描述
A, sin(1/x) 会在x趋近于正无穷时趋近于0.

在这里插入图片描述
trace是对角线之和。anti-symmetric并不是不对称,而是 B i j = B j i B_{ij} = - B_{ji} ,有一个推论是 B = B T -B = B^T

A B = A T B = ( A B T ) = ( A T B T ) = ( A B ) T AB = A^TB = -(AB^T) = -(A^TB^T) = -(AB)^T
上式证明了AB也是一个anti-symmetric的矩阵。所以trace为0.

在这里插入图片描述
三个概率的平方相加。0.46

在这里插入图片描述
第一个人的概率1/2,第二个人的概率1/4,第三个人的概率1/8,第四个人的概率1/16,第五个人的概率1/32。之后每一轮概率的倍数保持不变。

在这里插入图片描述
找local min或者local max。笨方法就是求一阶导数。选择题的办法就是代数。如果两边的点都比自己大/小,就是答案。这题选B。
在这里插入图片描述

在这里插入图片描述
实际上C是对的。
当n=1, d e t ( A ) = x det(A) = x
当n=2, d e t ( A ) = x 2 y 2 det(A) = x^2 - y^2
当n=3, d e t ( A ) = x 3 3 x y 2 + 2 y 3 det(A) = x^3 - 3xy^2 + 2y^3
在这里插入图片描述

扫描二维码关注公众号,回复: 11606004 查看本文章

在这里插入图片描述
选B。
A明显是错的,因为f(x,y)在(0,0)不一定是平滑的。
C,D错误的原因是f(x,y)在(0,0)的极限有可能是+inf,所以不一定存在。

猜你喜欢

转载自blog.csdn.net/qq_40136685/article/details/108356164
今日推荐