LeetCode第125場雙周賽個人題解

目錄

100231.?超過閾值的最少操作數 I

原題鏈接

思路分析

AC代碼

100232. 超過閾值的最少操作數 II

原題鏈接

思路分析

AC代碼

100226. 在帶權樹網絡中統計可連接服務器對數目

原題鏈接

思路分析

AC代碼

100210.?最大節點價值之和

原題鏈接

思路分析

AC代碼


100231.?超過閾值的最少操作數 I

原題鏈接

超過閾值的最少操作數 I - 力扣 (LeetCode) 競賽

思路分析

簽到題,沒啥說的

AC代碼

class Solution {
public:int minOperations(vector<int>& nums, int k) {sort(nums.begin(), nums.end());return lower_bound(nums.begin(), nums.end(), k) - nums.begin();}
};

100232. 超過閾值的最少操作數 II

原題鏈接

100232. 超過閾值的最少操作數 II

思路分析

數組放到小根堆,檢測是否全部大于等于k

如果有小于k的,就彈出倆元素,添加新元素

AC代碼

class Solution
{
public:int minOperations(vector<int> &nums, int k){long long res = 0, a, b;priority_queue<long long, vector<long long>, greater<long long>> pq;for (auto x : nums)pq.emplace(x);while (pq.top() < k)a = pq.top(), pq.pop(), b = pq.top(), pq.pop(), pq.emplace(a * 2 + b), res++;return res;}
};


100226. 在帶權樹網絡中統計可連接服務器對數目

原題鏈接

  100226. 在帶權樹網絡中統計可連接服務器對數目

思路分析

枚舉中間服務器c,順序從鄰接點往下遍歷,假如對某個鄰接點遍歷,得到可被整除路徑數目為tot,之前遍歷到的可被整除路徑數目為s,那么根據乘法原理,答案要增加tot*s

計算中間服務器c的貢獻需要O(N),n個點計算一遍是O(N^2)

AC代碼

const int N = 1005, M = N * N;
class Solution
{
public:struct edge{int v, w, nxt;} edges[M];int head[N], idx = 0;void addedge(int u, int v, int w){edges[idx] = {v, w, head[u]}, head[u] = idx++;}vector<int> countPairsOfConnectableServers(vector<vector<int>> &g, int signalSpeed){int n = g.size() + 1, tot = 0;memset(head, -1, sizeof head), idx = 0;vector<int> ret(n);for (auto &e : g)addedge(e[0], e[1], e[2]), addedge(e[1], e[0], e[2]);function<void(int, int, int)> dfs = [&](int u, int fa, long long pre){if ((pre % signalSpeed) == 0)tot++;for (int i = head[u]; ~i; i = edges[i].nxt){int v = edges[i].v;if (v == fa)continue;dfs(v, u, pre + edges[i].w);}};for (int u = 0, s = 0; u < n; u++){s=0;for (int i = head[u], v; ~i; i = edges[i].nxt){tot = 0, v = edges[i].v, dfs(v, u, edges[i].w);ret[u] += s * tot, s += tot;}}return ret;}
};

100210.?最大節點價值之和

原題鏈接

最大節點價值之和 - 力扣 (LeetCode) 競賽

思路分析

我們考慮,最終得到的最大數組和原數組相比看,可不可能只有奇數個元素發生變化

答案是不可能,自己可以模擬一下

因此必然有偶數個數發生變化

而對于numi和numj如果發生變化,我們一定可以做到只改變numi和numj而不影響其它元素

只要把路徑上的邊都操作一遍即可

所以問題就變成了偶數個數目進行異或k后數組的最大和

這個線性dp即可,跟樹沒關系

AC代碼

class Solution {
public:long long maximumValueSum(vector<int>& nums, int k, vector<vector<int>>& edges) {long long f0 = 0, f1 = -1e9, t;for(int x : nums) t = f0, f0 = max(f0 + x, f1 + (x ^ k)), f1 = max(t + (x ^ k), f1 + x);return f0;}
};

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/719716.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/719716.shtml
英文地址,請注明出處:http://en.pswp.cn/news/719716.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

大話C++之:對象內存模型

一般繼承(無虛函數覆蓋) 只有一個虛指針&#xff0c;指向一個虛表&#xff0c;虛函數按順序從祖先節點開始插入到虛表上。字段按順序從祖先節點開始插入到對象內存上 一般繼承(有虛函數覆蓋) 只有一個虛指針&#xff0c;指向一個虛表&#xff0c;虛函數按順序從祖先節點開始&a…

桂院校園導航 靜態項目 二次開發教程 2.0

Gitee代碼倉庫&#xff1a;桂院校園導航小程序 GitHub代碼倉庫&#xff1a;GLU-Campus-Guide 靜態項目 2.0版本 升級日志 序號 板塊 詳情 1 首頁 重做了首頁&#xff0c;界面更加高效和美觀 2 校園頁 新增了 “校園指南” 功能&#xff0c;可以搜索和瀏覽校園生活指南…

【金三銀四】每日一點面試題(Java--JVM篇)

1、說一下 JVM 的主要組成部分及其作用&#xff1f; JVM&#xff08;Java虛擬機&#xff09;是Java程序運行的核心組件&#xff0c;它負責將Java字節碼翻譯成底層操作系統能夠執行的指令。JVM由以下幾個主要組成部分構成&#xff1a; 類加載器&#xff08;Class Loader&#…

Modbus協議詳細解析與案例分享

目錄 Modbus協議詳細解析與案例分享1. Modbus協議簡介2. Modbus RTU和Modbus TCP的區別3. Modbus幀結構4. Modbus協議示例5. Modbus應用場景結語 Modbus協議詳細解析與案例分享 1. Modbus協議簡介 Modbus是一種串行通信協議&#xff0c;用于實現工業自動化設備之間的通信。它…

消息中間件|初識消息隊列

文章目錄 消息隊列是什么&#xff1f;消息隊列關鍵概念消息隊列優點消息隊列的應用場景異步處理應用解耦流量削峰消息通訊 常用消息隊列中間件的對比 消息隊列是什么&#xff1f; 消息隊列&#xff08;Message Queue&#xff09;是一種用于在軟件系統之間傳遞消息的通信機制。…

spring boot概述

SpringBoot是由Pivotal團隊提供的全新框架&#xff0c;其設計目的是用來簡化新Spring應用的初始搭建以及開發過程。 該框架使用了特定的方式來進行配置&#xff0c;從而使開發人員不再需要定義樣板化的配置。 通過這種方式&#xff0c;SpringBoot致力于在蓬勃發展的快速應用開發…

實時抓取SKU商品屬性詳細信息API數據接口(淘寶,某音)

item_sku-獲取sku詳細信息 taobao.item_sku詳細信息 API公共參數 請求地址: https://api-gw.onebound.cn/taobao/item_sku 名稱類型必須描述keyString是調用key&#xff08;演示示例&#xff09;secretString是調用密鑰api_nameString是API接口名稱&#xff08;包括在請求地…

設計模式學習筆記 - 設計原則 - 3.里氏替換原則,它和多態的區別是什么?

前言 今天來學習 SOLID 中的 L&#xff1a;里氏替換原則。它的英文翻譯是 Liskov Substitution Principle&#xff0c;縮寫為 LSP。 英文原話是&#xff1a; Functions that use points of references of base classes must be able to use objects of derived classes withou…

python-分享篇-生成仿微信公眾號推廣的個性二維碼(支持動態)

代碼 生成仿微信公眾號推廣的個性二維碼&#xff08;支持動態&#xff09;from MyQR import myqr # 要生成動態二維碼&#xff0c;只需要將piture參數和save_name參數設置gif動圖即可 myqr.run(wordshttps://blog.csdn.net/stqer/article/details/135553200, # 指定二維碼包含…

JVM(內存區域劃分)

JVM JVM - Java虛擬機 我們編寫的 Java 程序, 是不能夠被 OS 直接識別的 JVM 充當翻譯官的角色, 負責把我們寫的的 Java 程序 ,翻譯給 OS “聽”, 讓 OS 能夠識別我們所寫的 Java 代碼 JVM 內存區域劃分 JVM 是一個應用程序, 在啟動的時候, 會從 操作系統 申請到一整塊很大的內…

AI-RAN聯盟在MWC24上正式啟動

AI-RAN聯盟在MWC24上正式啟動。它的logo是這個樣的&#xff1a; 2月26日&#xff0c;AI-RAN聯盟&#xff08;AI-RAN Alliance&#xff09;在2024年世界移動通信大會&#xff08;MWC 2024&#xff09;上成立。創始成員包括亞馬遜云科技、Arm、DeepSig、愛立信、微軟、諾基亞、美…

【dc-dc】AP510X單路低壓差線性恒流芯片

說明 AP510X 是一系列外圍電路簡潔的單路線性 LED 恒 流芯片&#xff0c;適用于 3-60V 電壓范圍的 LED 恒流調光 領域。 AP510X 采用我司專利算法&#xff0c;可以實現高精度的恒 流效果&#xff0c;輸出電流恒流精度≤ 3 &#xff05;&#xff0c;電源供電工作 范…

【LeetCode】升級打怪之路 Day 11:棧的應用、單調棧

今日題目&#xff1a; Problem 1: 棧的應用 155. 最小棧 | LeetCode20. 有效的括號 | LeetCode150. 逆波蘭表達式求值 | LeetCode Problem 2: 單調棧 496. 下一個更大元素 I739. 每日溫度503. 下一個更大元素 II 目錄 Problem 1&#xff1a;棧 - “先進后出”的應用LC 155. 最…

【Java設計模式】五、建造者模式

文章目錄 1、建造者模式2、案例&#xff1a;共享單車的創建3、其他用途 1、建造者模式 某個對象的構建復雜將復雜的對象的創建 和 屬性賦值所分離&#xff0c;使得同樣的構建過程可以創建不同的表示建造的過程和細節調用者不需要知道&#xff0c;只需要通過構建者去進行操作 …

力扣刷題記錄--463. 島嶼的周長

題目鏈接&#xff1a;463. 島嶼的周長 - 力扣&#xff08;LeetCode&#xff09; 題目描述 我的代碼實現 class Solution {public int islandPerimeter(int[][] grid) { int result0; int rowgrid.length; int colgrid[0].length; for(int i0;i<row;i){for(int j0;j<col…

【EI會議征稿通知】2024年圖像處理與人工智能國際學術會議(ICIPAI2024)

2024年圖像處理與人工智能國際學術會議&#xff08;ICIPAI2024&#xff09; 2024 International Conference on Image Processing and Artificial Intelligence&#xff08;ICIPAI2024&#xff09; 2024年圖像處理與人工智能國際學術會議&#xff08;ICIPAI2024&#xff09;將…

返回靜態數據

在Java項目中&#xff0c;往往不會一直返回某某數據&#xff0c;而是會返回一個靜態頁面&#xff0c;那么&#xff0c;如何正確返回一個靜態頁面呢&#xff1f;&#xff1f; 要想成功的返回一個靜態頁面前提是必須要有一個靜態頁面&#xff1a; <!DOCTYPE html> <ht…

如何讓 JOIN 跑得更快?

JOIN 一直是數據庫性能優化的老大難問題&#xff0c;本來挺快的查詢&#xff0c;一旦涉及了幾個 JOIN&#xff0c;性能就會陡降。而且&#xff0c;參與 JOIN 的表越大越多&#xff0c;性能就越難提上來。 其實&#xff0c;讓 JOIN 跑得快的關鍵是要對 JOIN 分類&#xff0c;分…

Effective Programming 學習筆記

1 基本語句 1.1 斷言 在南溪看來&#xff0c;斷言可以用來有效地確定編程中當前代碼運行的前置條件&#xff0c;尤其是以下情況&#xff1a; 第三方工具庫對輸入數據的依賴&#xff0c;例如&#xff1a;minitouch庫對Android版本的要求

第三百八十一回

文章目錄 1. 概念介紹2. 修改方法 015buttonStyle.png2.1 修改形狀2.2 修改顏色2.3 修改位置 3. 示例代碼4. 內容總結 我們在上一章回中介紹了"如何創建以圖片為背景的頁面"相關的內容&#xff0c;本章回中將介紹如何修改按鈕的形狀.閑話休提&#xff0c;讓我們一起T…