首页 > 9.7完美世界笔试
头像
梦否
发布于 2021-09-07 21:17
+ 关注

9.7完美世界笔试

1. 兔子跳桩
有N个桩,兔子每次可以向右跳jump[i]个距离,也可以任意向左回跳一步,求最快跳出界的路径长度。

比如:
输入jump=[2, 5, 1, 1, 1, 1]
返回4。路径为0->2->3->1->6

通过33.3%。没想出来怎么做。
public int minJump (int[] jump) {
}


2. 买辅导书
给定一个数组,表示每本书的价格,现需要买两本书,给定总钱数,问有多少种不同的组合。

比如:
输入:[1, 2, 6, 9],10
输出:4。即:(1, 2),(1, 6),(1, 9),(2, 6)


通过100%。
public int purchaseCourses (int[] prices, int pocket) {
    // write code here
    int T = 1000000007;
    int count = 0;
    Arrays.sort(prices);
    int len = prices.length;
    int left = 0, right = len - 1;
    while(left < right){
        while(prices[left] + prices[right] > pocket){
            right--;
        }
        if(left < right){
            count = (count + right - left) % T;
            left++;
            right = len - 1;
        }
    }
    return count;
}



全部评论

(4) 回帖
加载中...
话题 回帖