国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專(zhuān)欄INFORMATION COLUMN

1090-受標(biāo)簽影響的最大值

sunny5541 / 1989人閱讀

摘要:前言的受標(biāo)簽影響的最大值我們有一個(gè)項(xiàng)的集合,其中第項(xiàng)的值為,標(biāo)簽為。我們從這些項(xiàng)中選出一個(gè)子集,這樣一來(lái)對(duì)于任意的標(biāo)簽,子集中標(biāo)簽為的項(xiàng)的數(shù)目總滿足。返回子集的最大可能的和。示例輸入輸出解釋選出的子集是第一項(xiàng),第二項(xiàng)和第三項(xiàng)。

前言

Weekly Contest 141的 受標(biāo)簽影響的最大值:

我們有一個(gè)項(xiàng)的集合,其中第 i 項(xiàng)的值為 values[i],標(biāo)簽為 labels[i]。

我們從這些項(xiàng)中選出一個(gè)子集 S,這樣一來(lái):

|S| <= num_wanted

對(duì)于任意的標(biāo)簽 L,子集 S 中標(biāo)簽為 L 的項(xiàng)的數(shù)目總滿足 <= use_limit

返回子集 S 的最大可能的

示例1:

輸入:values = [5,4,3,2,1], labels = [1,1,2,2,3], num_wanted = 3, use_limit = 1
輸出:9
解釋?zhuān)哼x出的子集是第一項(xiàng),第三項(xiàng)和第五項(xiàng)。

示例2:

輸入:values = [5,4,3,2,1], labels = [1,3,3,3,2], num_wanted = 3, use_limit = 2
輸出:12
解釋?zhuān)哼x出的子集是第一項(xiàng),第二項(xiàng)和第三項(xiàng)。

示例3:

輸入:values = [9,8,8,7,6], labels = [0,0,0,1,1], num_wanted = 3, use_limit = 1
輸出:16
解釋?zhuān)哼x出的子集是第一項(xiàng)和第四項(xiàng)。

示例4:

輸入:values = [9,8,8,7,6], labels = [0,0,0,1,1], num_wanted = 3, use_limit = 2
輸出:24
解釋?zhuān)哼x出的子集是第一項(xiàng),第二項(xiàng)和第四項(xiàng)。

提示:

1 <= values.length == labels.length <= 20000

0 <= values[i], labels[i] <= 20000

1 <= num_wanted, use_limit <= values.length

解題思路

本題題目可能會(huì)有點(diǎn)難以理解,可用把題目中的項(xiàng)看做帶有值的標(biāo)簽。而labels就是標(biāo)簽列表,values就是標(biāo)簽列表對(duì)應(yīng)的標(biāo)簽值列表。

簡(jiǎn)單點(diǎn)說(shuō),標(biāo)簽與標(biāo)簽值的關(guān)系為多對(duì)多,一個(gè)標(biāo)簽可以有多個(gè)標(biāo)簽值,而一個(gè)相同的值可以多個(gè)標(biāo)簽都使用。

而題目的意思就是在所有項(xiàng)中選取num_wanted個(gè)元素,但是選取的元素如果存在標(biāo)簽一致的情況,只能存在use_limit個(gè)相同標(biāo)簽的項(xiàng)。找出滿足上述條件的子集,且該子集的項(xiàng)的標(biāo)簽值之和最大,并返回該最大值。

下面我以示例4作為例子,講解一下我的解題思路:

輸入:values = [9,8,8,7,6], labels = [0,0,0,1,1], num_wanted = 3, use_limit = 2
輸出:24
解釋?zhuān)哼x出的子集是第一項(xiàng),第二項(xiàng)和第四項(xiàng)。

valueslabels轉(zhuǎn)化為以valueskey,每個(gè)key對(duì)應(yīng)多個(gè)label的結(jié)構(gòu),同時(shí)以key從大到小進(jìn)行排序。內(nèi)容如下所示

9 : [0]
8 : [0,0]
7 : [1]
6 : [1]

依次遍歷第1步中的數(shù)據(jù)并進(jìn)行處理,處理步驟如下:

遍歷key對(duì)應(yīng)的label列表

如果該label使用次數(shù)小于use_limit,則將將最大值加上對(duì)應(yīng)的key,同時(shí)num_wanted自減

每輪循環(huán)都要判斷num_wanted是否為0

實(shí)現(xiàn)代碼
    /**
     * 1090. 受標(biāo)簽影響的最大值
     * @param values 標(biāo)簽值列表
     * @param labels 標(biāo)簽名列表
     * @param num_wanted 期待的標(biāo)簽個(gè)數(shù)
     * @param use_limit 每個(gè)標(biāo)簽可重復(fù)的次數(shù)
     * @return
     */
    public int largestValsFromLabels(int[] values, int[] labels, int num_wanted, int use_limit) {
        // value和label的映射,需要注意使用的是入?yún)alues作為key倒序(從大到?。┐鎯?chǔ)
        Map> valueLabelMap = new TreeMap<>(Comparator.reverseOrder());
        // 每個(gè)label的出現(xiàn)次數(shù)
        Map occurTimes = new HashMap<>();
        // 最大值
        int result = 0;
        for(int i=0;i list=new ArrayList<>();
                list.add(labels[i]);
                valueLabelMap.put(values[i],list);
            }
        }
        Iterator>> it=valueLabelMap.entrySet().iterator();
        while (it.hasNext()){ // 遍歷TreeMap
            Map.Entry> entry = it.next();
            // 對(duì)應(yīng)的值
            Integer value = entry.getKey();
            List labelList = entry.getValue();
            labelList.sort(Comparator.comparing(Integer::intValue));
            for(int i=0;i           
               
                                           
                       
                 

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

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/77774.html

相關(guān)文章

  • 網(wǎng)頁(yè)頂部導(dǎo)航欄加強(qiáng)(分為左右兩部分;添加一個(gè)不被污染樣式搜索框)

    摘要:目標(biāo)中間一段空白把導(dǎo)航欄分為左右兩個(gè)部分在導(dǎo)航欄上加上一個(gè)搜索框,但不被的樣式污染。 前置 本文需要對(duì)CSS,Vue,ElementUI有基本的了解。 本文以ElementUI提供的導(dǎo)航菜單組件為基礎(chǔ)。 本文希望能在此組件基礎(chǔ)上實(shí)現(xiàn)以下內(nèi)容: 中間一段空白把導(dǎo)航欄分為左右兩個(gè)部分 在導(dǎo)航欄上加上一個(gè)搜索框,但不被 el-menu-item 的樣式污染。 先研究清楚ElementUI...

    yedf 評(píng)論0 收藏0
  • 利用PYTHON全自動(dòng)生成分析報(bào)告

    摘要:本文通過(guò)一個(gè)簡(jiǎn)單實(shí)例,介紹中的一個(gè)叫模塊,可以實(shí)現(xiàn)全自動(dòng)獲取數(shù)據(jù)分析數(shù)據(jù)最終生成分析報(bào)告的全部操作。另外更有用的在于通過(guò)嵌入網(wǎng)絡(luò)爬蟲(chóng),以及對(duì)外部的接口,可以快速實(shí)現(xiàn)大量手工勞動(dòng)才能完成的工作,提高工作效率 日常工作當(dāng)中,特別是金融行業(yè)當(dāng)中,有不少人的工作是提取數(shù)據(jù),分析數(shù)據(jù),得到可視化圖表,并加入自已的研究分析結(jié)論,最終生成分析報(bào)告,并且有不少報(bào)告是定期生成,存在不少重復(fù)手工勞動(dòng)。本文...

    xorpay 評(píng)論0 收藏0
  • viewport&像素

    摘要:屏幕分辨率是指一塊屏幕中畫(huà)面水平方向的像素值畫(huà)面垂直方向的像素值。圖像分辨率是指每英寸圖像內(nèi)的像素點(diǎn)數(shù)。圖像分辨率是有單位的,叫像素每英寸。設(shè)備像素可能不相同物理像素不會(huì)改變,單位是。及英寸,而英寸等于厘米舉個(gè) viewport是什么 移動(dòng)端中,分為兩個(gè)視口: layout viewport 布局視口: 視口的分辨率接近于PC顯示器,也就是html的寬度接近于pc端的寬度。 visu...

    hankkin 評(píng)論0 收藏0
  • 大型云提供商云端閃存存儲(chǔ)

    摘要:云端閃存部署細(xì)節(jié)塊存儲(chǔ)僅可用于連接到虛擬實(shí)例或虛擬機(jī)。在這些產(chǎn)品中,只有彈性塊存儲(chǔ)具有明確使用閃存存儲(chǔ)的功能。谷歌云平臺(tái)提供三種主要存儲(chǔ)選項(xiàng)云存儲(chǔ)對(duì)象永久磁盤(pán)塊和云文件存儲(chǔ)文件。隨著閃存存儲(chǔ)價(jià)格下降且設(shè)備容量提升,閃存存儲(chǔ)逐漸成為企業(yè)的首選存儲(chǔ)選項(xiàng)。公共云平臺(tái)上的存儲(chǔ)同樣是如此,這些平臺(tái)具有基于固態(tài)的存儲(chǔ)產(chǎn)品,可為需要存儲(chǔ)功能的應(yīng)用程序提高性能和吞吐量。本文中,讓我們來(lái)看看哪些閃存作為云存儲(chǔ)...

    Maxiye 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<