国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【LeetCode每日一題】——575.分糖果

這篇具有很好參考價值的文章主要介紹了【LeetCode每日一題】——575.分糖果。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

一【題目類別】

  • 哈希表

二【題目難度】

  • 簡單

三【題目編號】

  • 575.分糖果

四【題目描述】

  • Alice 有 n 枚糖,其中第 i 枚糖的類型為 candyType[i] 。Alice 注意到她的體重正在增長,所以前去拜訪了一位醫(yī)生。
  • 醫(yī)生建議 Alice 要少攝入糖分,只吃掉她所有糖的 n / 2 即可(n 是一個偶數(shù))。Alice 非常喜歡這些糖,她想要在遵循醫(yī)生建議的情況下,盡可能吃到最多不同種類的糖。
  • 給你一個長度為 n 的整數(shù)數(shù)組 candyType ,返回: Alice 在僅吃掉 n / 2 枚糖的情況下,可以吃到糖的 最多 種類數(shù)。

五【題目示例】

  • 示例 1:

    • 輸入:candyType = [1,1,2,2,3,3]
    • 輸出:3
    • 解釋:Alice 只能吃 6 / 2 = 3 枚糖,由于只有 3 種糖,她可以每種吃一枚。
  • 示例 2:

    • 輸入:candyType = [1,1,2,3]
    • 輸出:2
    • 解釋:Alice 只能吃 4 / 2 = 2 枚糖,不管她選擇吃的種類是 [1,2]、[1,3] 還是 [2,3],她只能吃到兩種不同類的糖。
  • 示例 3:

    • 輸入:candyType = [6,6,6,6]
    • 輸出:1
    • 解釋:Alice 只能吃 4 / 2 = 2 枚糖,盡管她能吃 2 枚,但只能吃到 1 種糖。

六【題目提示】

  • n = = c a n d y T y p e . l e n g t h n == candyType.length n==candyType.length
  • 2 < = n < = 1 0 4 2 <= n <= 10^4 2<=n<=104
  • n 是一個偶數(shù) n 是一個偶數(shù) n是一個偶數(shù)
  • ? 1 0 5 < = c a n d y T y p e [ i ] < = 1 0 5 -10^5 <= candyType[i] <= 10^5 ?105<=candyType[i]<=105

七【解題思路】

  • 因為糖果的個數(shù)總共為 n n n個,所以根據(jù)題意,最后返回的結(jié)果不會超過 n 2 \frac{n}{2} 2n?
  • 此外,設(shè)這些糖果一共有 m m m種,所以說返回的結(jié)果也不會超過 m m m
  • 如果 m ≤ n 2 m \leq \frac{n}{2} m2n?,那么說明可以吃到重復(fù)的糖果,但是最多吃到 m m m種糖果,返回的結(jié)果就是 m m m
  • 如果 m ≥ n 2 m \geq \frac{n}{2} m2n?,那么說明就算有再多的糖果種類,也只能吃到 n 2 \frac{n}{2} 2n?顆糖果
  • 綜上所述,最后返回的結(jié)果為: m i n ( m , n 2 ) min(m, \frac{n}{2}) min(m,2n?)
  • 實現(xiàn)以上思路使用哈希表即可,比較簡單,具體內(nèi)容可參見下面的代碼
  • 最后返回結(jié)果即可

八【時間頻度】

  • 時間復(fù)雜度: O ( n ) O(n) O(n), n n n為傳入的數(shù)組的長度
  • 空間復(fù)雜度: O ( n ) O(n) O(n), n n n為傳入的數(shù)組的長度

九【代碼實現(xiàn)】

  1. Java語言版
class Solution {
    public int distributeCandies(int[] candyType) {
        HashSet<Integer> set = new HashSet<>();
        for(int i = 0;i < candyType.length;i++){
            set.add(candyType[i]);
        }
        return Math.min(set.size(), candyType.length / 2);
    }
}
  1. C語言版
int distributeCandies(int* candyType, int candyTypeSize)
{
    int* map = (int*)calloc(200001, sizeof(int));
    for(int i = 0;i < candyTypeSize;i++)
    {
        map[candyType[i] + 100000]++;
    }
    int count = 0;
    for(int i = 0;i < 200001;i++)
    {
        if(map[i] > 0)
        {
            count++;
        }
    }
    return fmin(count, candyTypeSize / 2);
}
  1. Python語言版
class Solution:
    def distributeCandies(self, candyType: List[int]) -> int:
        return min(len(set(candyType)), len(candyType) // 2)
  1. C++語言版
class Solution {
public:
    int distributeCandies(vector<int>& candyType) {
        return min(unordered_set<int>(candyType.begin(), candyType.end()).size(), candyType.size() / 2);
    }
};

十【提交結(jié)果】

  1. Java語言版
    【LeetCode每日一題】——575.分糖果,LeetCode,算法,數(shù)據(jù)結(jié)構(gòu),LeetCode,哈希表,575.分糖果

  2. C語言版
    【LeetCode每日一題】——575.分糖果,LeetCode,算法,數(shù)據(jù)結(jié)構(gòu),LeetCode,哈希表,575.分糖果

  3. Python語言版
    【LeetCode每日一題】——575.分糖果,LeetCode,算法,數(shù)據(jù)結(jié)構(gòu),LeetCode,哈希表,575.分糖果

  4. C++語言版
    【LeetCode每日一題】——575.分糖果,LeetCode,算法,數(shù)據(jù)結(jié)構(gòu),LeetCode,哈希表,575.分糖果文章來源地址http://www.zghlxwxcb.cn/news/detail-636670.html

到了這里,關(guān)于【LeetCode每日一題】——575.分糖果的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • C語言每日一題:11.《數(shù)據(jù)結(jié)構(gòu)》鏈表分割。

    C語言每日一題:11.《數(shù)據(jù)結(jié)構(gòu)》鏈表分割。

    題目鏈接: 1.構(gòu)建兩個新的帶頭鏈表,頭節(jié)點不存儲數(shù)據(jù)。 2.循環(huán)遍歷原來的鏈表。 3.小于x的尾插到第一個鏈表。 4.大于等于x尾插到第二個鏈表。 5.進行鏈表合并,注意第二個鏈表的尾的下一個需要置空防止成環(huán)。 6.free兩個頭之前需要保存新的滿足條件的單鏈表的頭。 1.有

    2024年02月14日
    瀏覽(25)
  • 【每日一題】補檔 CF487B. Strip | 數(shù)據(jù)結(jié)構(gòu)雜燴 -> 單調(diào)隊列 | 困難

    原題鏈接 給定一個長度為 n n n 的數(shù)組,將這個數(shù)組進行拆分成若干個連續(xù)子數(shù)組, 使得每個子數(shù)組的最大值減去最小值小于等于 s s s , 且每個子數(shù)組的長度大于等于 l e n len l e n 。 問最少可以拆分成多少個連續(xù)子數(shù)組,如果不可以,則輸出 ? 1 -1 ? 1 1 ≤ n , l e n ≤ 1 0

    2024年02月06日
    瀏覽(21)
  • leetcode每日一題44

    圖論 dfs/bfs dfs代碼框架 思路:本題要求找到被x圍繞的陸地,所以邊界的陸地O肯定不符合條件。那么我們只要從周邊找到陸地O然后 通過 dfs或者bfs 將周邊靠陸地且相鄰的陸地O都變成A,然后再去重新遍歷地圖的時候,把剩下的O變成X,再把所有的A變成O。 確認遞歸函數(shù),參數(shù)

    2024年01月19日
    瀏覽(28)
  • LeetCode每日一題之 復(fù)寫0

    LeetCode每日一題之 復(fù)寫0

    目錄 題目介紹: 算法原理: 特殊位置處理: 代碼實現(xiàn): 題目鏈接:. - 力扣(LeetCode) 這種對數(shù)組元素進行修改,移動的題目我們?nèi)匀豢梢允褂秒p指針法,不過我們按照常規(guī)思路從左到右處理數(shù)組,不難發(fā)現(xiàn)如下這種問題: 當cur指向1時,讓dest下一個元素復(fù)寫cur指向的元素

    2024年04月23日
    瀏覽(27)
  • 每日一題(LeetCode)----二分查找(一)

    給定一個排序數(shù)組和一個目標值,在數(shù)組中找到目標值,并返回其索引。如果目標值不存在于數(shù)組中,返回它將會被按順序插入的位置。 請必須使用時間復(fù)雜度為 O(log n) 的算法。 示例 1: 示例 2: 示例 3: 提示: 1 = nums.length = 104 -104 = nums[i] = 104 nums 為 無重復(fù)元素 的 升序 排列數(shù)

    2024年02月08日
    瀏覽(25)
  • 【LeetCode每日一題】——566.重塑矩陣

    【LeetCode每日一題】——566.重塑矩陣

    矩陣 簡單 566.重塑矩陣 在 MATLAB 中,有一個非常有用的函數(shù) reshape ,它可以將一個 m x n 矩陣重塑為另一個大小不同(r x c)的新矩陣,但保留其原始數(shù)據(jù)。 給你一個由二維數(shù)組 mat 表示的 m x n 矩陣,以及兩個正整數(shù) r 和 c ,分別表示想要的重構(gòu)的矩陣的行數(shù)和列數(shù)。 重構(gòu)后

    2024年02月14日
    瀏覽(20)
  • leetcode每日一題:62. 不同路徑

    leetcode每日一題:62. 不同路徑

    系列:動態(tài)規(guī)劃 語言:java 難度:中等 題目來源:Leetcode62. 不同路徑 開啟動態(tài)規(guī)劃章節(jié)了??!歡迎您在留言和我一起完成每日打卡,以后每天8點半前發(fā)布每日一題。 原題鏈接:Leetcode62. 不同路徑 一個機器人位于一個 m x n 網(wǎng)格的左上角 (起始點在下圖中標記為 “Start” )

    2023年04月22日
    瀏覽(20)
  • 每日一題:leetcode 57 插入?yún)^(qū)間

    給你一個 ?無重疊的 ?, 按照區(qū)間起始端點排序的區(qū)間列表。 在列表中插入一個新的區(qū)間,你需要確保列表中的區(qū)間仍然有序且不重疊(如果有必要的話,可以合并區(qū)間)。 示例 1: 示例 2: 示例 3: 示例 4: 示例 5: 提示: 0 = intervals.length = 104 intervals[i].length == 2 0 = int

    2024年02月11日
    瀏覽(22)
  • 【LeetCode每日一題】——85.最大矩形

    【LeetCode每日一題】——85.最大矩形

    矩陣 困難 85.最大矩形 給定一個僅包含 0 和 1 、大小為 rows x cols 的二維二進制矩陣,找出只包含 1 的最大矩形,并返回其面積。 示例 1: 輸入:matrix = [[“1”,“0”,“1”,“0”,“0”],[“1”,“0”,“1”,“1”,“1”],[“1”,“1”,“1”,“1”,“1”],[“1”,“0”,“0”,“1”,“

    2024年02月13日
    瀏覽(22)
  • 每日一題:LeetCode-75. 顏色分類

    每日一題:LeetCode-75. 顏色分類

    前言: ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ????如果說代碼有靈魂,那么它的靈魂一定是???? 算法 ????,因此,想要寫出??優(yōu)美的程序??,核心算法是必不可少的,少年,你渴望力量嗎????,想掌握程序的靈魂嗎???那么就必須踏上這樣一條漫長

    2024年02月04日
    瀏覽(23)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包