成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

[LeetCode] 904. Fruit Into Baskets

Warren / 2598人閱讀

Problem

In a row of trees, the i-th tree produces fruit with type tree[i].

You start at any tree of your choice, then repeatedly perform the following steps:

Add one piece of fruit from this tree to your baskets. If you cannot, stop.
Move to the next tree to the right of the current tree. If there is no tree to the right, stop.
Note that you do not have any choice after the initial choice of starting tree: you must perform step 1, then step 2, then back to step 1, then step 2, and so on until you stop.

You have two baskets, and each basket can carry any quantity of fruit, but you want each basket to only carry one type of fruit each.

What is the total amount of fruit you can collect with this procedure?

Example 1:

Input: [1,2,1]
Output: 3
Explanation: We can collect [1,2,1].

Example 2:

Input: [0,1,2,2]
Output: 3
Explanation: We can collect [1,2,2].
If we started at the first tree, we would only collect [0, 1].

Example 3:

Input: [1,2,3,2,2]
Output: 4
Explanation: We can collect [2,3,2,2].
If we started at the first tree, we would only collect [1, 2].

Example 4:

Input: [3,3,3,1,2,1,1,2,3,3,4]
Output: 5
Explanation: We can collect [1,2,1,1,2].
If we started at the first tree or the eighth tree, we would only collect 4 fruits.

Note:

1 <= tree.length <= 40000
0 <= tree[i] < tree.length

Solution
class Solution {
    public int totalFruit(int[] tree) {
        if (tree.length <= 2) return tree.length;
        Map map = new HashMap<>();
        int start = 0, max = 0;
        for (int i = 0; i < tree.length; i++) {
            map.put(tree[i], map.getOrDefault(tree[i], 0)+1);
            while (map.size() > 2) {
                map.put(tree[start], map.get(tree[start])-1);
                if (map.get(tree[start]) == 0) map.remove(tree[start]);
                start++;
            }
            max = Math.max(max, i-start+1);
        }
        return max;
    }
}

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/71941.html

相關(guān)文章

  • PHP 數(shù)據(jù)庫操作

    摘要:操作數(shù)據(jù)庫的種形式使用擴展類庫推薦使用擴展類庫這是類庫的升級版,但已經(jīng)不推薦使用擴展包含哪三個類與區(qū)別可以支持多種數(shù)據(jù)庫,而且操作方法一致只支持數(shù)據(jù)庫如何使用連接數(shù)據(jù)庫什么是如何關(guān)閉連接通過來連接數(shù)據(jù)庫,其中必須傳入數(shù)據(jù)源名稱數(shù)據(jù)源名稱是 PHP操作數(shù)據(jù)庫的2種形式 使用 PDO 擴展類庫(推薦) 使用 Mysqli 擴展類庫(這是Mysql類庫的升級版,但已經(jīng)不推薦使用) PDO...

    Jingbin_ 評論0 收藏0
  • 容器最大盛水量

    摘要:容器最大盛水量給定個非負整數(shù),,,,其中每個表示坐標,處的點。找到兩條線,它們與軸一起形成一個容器,使得容器含有最多的水。 容器最大盛水量 Container With Most Water 給定n個非負整數(shù)a1,a2,...,an,其中每個表示坐標(i,ai)處的點。 繪制n條垂直線,使得線i的兩個端點在(i,ai)和(i,0)處。 找到兩條線,它們與x軸一起形成一個容器,使得容器...

    luckyw 評論0 收藏0
  • 904-水果成籃

    摘要:前言的第一題水果成籃在一排樹中,第棵樹產(chǎn)生型的水果。你有兩個籃子,每個籃子可以攜帶任何數(shù)量的水果,但你希望每個籃子只攜帶一種類型的水果。 前言 Weekly Contest 102的第一題水果成籃: 在一排樹中,第 i 棵樹產(chǎn)生 tree[i] 型的水果。你可以從你選擇的任何樹開始,然后重復執(zhí)行以下步驟: 把這棵樹上的水果放進你的籃子里。如果你做不到,就停下來。 移動到當前樹右側(cè)的...

    linkFly 評論0 收藏0
  • [LeetCode] 708. Insert into a Cyclic Sorted List

    Problem Given a node from a cyclic linked list which is sorted in ascending order, write a function to insert a value into the list such that it remains a cyclic sorted list. The given node can be a r...

    qpwoeiru96 評論0 收藏0

發(fā)表評論

0條評論

Warren

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<