美团点评前端在线笔试题总结

由于太久没有复习算法知识,导致基本没写出来,但是都是以前学过的知识,编程题主要有两道:

1.求矩阵最小路径

给定一个矩阵m
从左上角开始
每次只能往下或者往右走
最后到达右下角的位置
路径上所有数字之和就是路径和
求最小路径和
用c++写的:

#include 
using namespace std;

int main() {
    int m;
    scanf("%d",&m);//输入矩阵大小
    int i,j,input[m][m],output[m][m];
    for (i = 0 ; i>input[i][j];
            output[i][j] = input[i][j];
        }
    }
    for (i=1; i

2.求最少优惠券使用数量

自行输入用例:
商品价格,若干种面值的优惠券(第一个数是种类数量)
65
4 30 20 10 5
输出使用优惠券最少的最优方案
(需要先排序)从大到小,这里省略

function dikou(total, youhui) {
    function _dikou(t, q, tmp) {
        // console.log(tmp, q, q.length - 1)
        if (t < q[q.length - 1] || tmp.length >= 5) return tmp

        if (t - q[0] >= 0) {
            tmp.push(q[0])
            return _dikou(t - q[0], q, tmp)
        } else {
            return _dikou(t, q.slice(1), tmp)
        }
    }

    let result = []
    return _dikou(total, youhui, result)
}

console.log(dikou(65, [30, 20, 10, 5]))

你可能感兴趣的:(美团点评前端在线笔试题总结)