藍橋杯思維訓練營(三)

文章目錄

  • 題目詳解
    • 680.驗證回文串 II
    • 30.魔塔游戲
    • 徒步旅行中的補給問題
    • 觀光景點組合得分問題

在這里插入圖片描述

題目詳解

680.驗證回文串 II

680.驗證回文串 II
在這里插入圖片描述
在這里插入圖片描述

思路分析:這個題目的關鍵就是,按照正常來判斷對應位置是否相等,如果不相等,那么就判斷是刪除左邊的字符還是右邊的字符,刪除之后如果不滿足,則就直接返回False

class Solution:def validPalindrome(self, s: str) -> bool:n = len(s)left, right = 0, n - 1def ishui(a, b):while a <= b:if s[a] != s[b]:return Falsea += 1b -= 1return Truewhile left <= right:if s[left] == s[right]:left += 1right -= 1else:# 嘗試跳過左邊或右邊的一個字符return ishui(left + 1, right) or ishui(left, right - 1)return True

30.魔塔游戲

30.魔塔游戲
在這里插入圖片描述

思路分析:總體的思路,首先判斷sum是否大于0,如果不行,那么如何調整都不會滿足,如果可以滿足,那么我們從左往右進行遍歷分析,當目前沒有血量的時候,就將先前遇到的最小的負數移到末尾(實際上只用恢復cur加回來)
其中,如何得到先前遇到的最小負數?在這里我們使用小根堆進行存儲

import heapq
class Solution:def magicTower(self, nums: List[int]) -> int:# 首先判斷能否去?其實就統計總和是否》=0即可。# 在可以到達的時候,最多調整次數為負數的次數if not sum(nums)>=0:return -1# 可以到達# 其實可以統計一個數的左邊最小的負數,包含當前的數n = len(nums)cur = 1hp = []ans = 0# 使用小根堆進行存儲當前的負數的情況for i in range(n):# 負數的話就加入if nums[i] < 0:heapq.heappush(hp,nums[i])# 無論正負,都加入curcur+=nums[i]# 如果棧中還有元素,并且當前沒有血量,就彈出反悔最小的負數while hp and cur <= 0:p = heapq.heappop(hp)ans+=1cur+=abs(p)return ans

徒步旅行中的補給問題

徒步旅行中的補給問題

在這里插入圖片描述
在這里插入圖片描述

思路分析:這個題目的意思是,你首先得購買補給,然后吃一份,也就是在到達下一個補給站的時候只有k-1份補給,在這題中,我們到達一個新的補給站的時候,也購買k份當前補給站的補給,然后將我們背包中的補給全部進行升序排序,留下前k份,吃一份,然后上路,一直持續這個操作

def solution(n, k, data):# Edit your code here# 策略,還是正常cur = 0pq = []ans = 0# 貪心后悔策略#for i in range(n):pq = pq + [data[i]]*kpq.sort()pq = [pq[i] for i in range(k)]# 取出第一個元素ans+=pq[0]pq.pop(0)return ans   if __name__ == "__main__":# Add your test cases hereprint(solution(5, 2, [1, 2, 3, 3, 2]) == 9)

觀光景點組合得分問題

觀光景點組合得分問題

在這里插入圖片描述

思路分析:對于這題,我們肯定是直接進行一次遍歷,然后邊遍歷邊更新答案即可
不過要注意的是更新的條件中,我們不僅要記錄values[i]之前的最大的值,還要記錄下標,因為下標也會貢獻得分,是values[i] + i 貢獻全部的得分,這一點我們通過分解公式可以得出

def solution(values: list) -> int:# PLEASE DO NOT MODIFY THE FUNCTION SIGNATURE# write code here# 直接求解出當前values[i]左邊的最高的分數n = len(values)leftmax = values[0]leftmaxf = 0ans = -10005for i in range(1,n):ans = max(ans,values[i]+leftmax+leftmaxf-i)if values[i]+i>=leftmax+leftmaxf:leftmax=values[i]leftmaxf = ireturn ansif __name__ == '__main__':print(solution(values=[8, 3, 5, 5, 6]) == 11)print(solution(values=[10, 4, 8, 7]) == 16)print(solution(values=[1, 2, 3, 4, 5]) == 8)

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

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

相關文章

重生之我在異世界學編程之C語言:深入指針篇(上)

大家好&#xff0c;這里是小編的博客頻道 小編的博客&#xff1a;就愛學編程 很高興在CSDN這個大家庭與大家相識&#xff0c;希望能在這里與大家共同進步&#xff0c;共同收獲更好的自己&#xff01;&#xff01;&#xff01; 本文目錄 引言正文&#xff08;1&#xff09;內置數…

密碼學的數學基礎1-素數和RSA加密

數學公式推導是密碼學的基礎, 故開一個新的課題 – 密碼學的數學基礎系列 素數 / 質數 質數又稱素數。 一個大于1的自然數&#xff0c;除了1和它自身外&#xff0c;不能被其他自然數整除的數叫做質數&#xff1b;否則稱為合數&#xff08;規定1既不是質數也不是合數&#xff0…

kamailio源文件modules.lst的內容解釋

在執行make cfg 后&#xff0c;在kamailio/src目錄下有一個文件modules.lst&#xff0c;內容如下&#xff1a; # this file is autogenerated by make modules-cfg# the list of sub-directories with modules modules_dirs:modules# the list of module groups to compile cf…

音視頻入門基礎:RTP專題(7)——RTP協議簡介

一、引言 本文對RTP協議進行簡介。在簡介之前&#xff0c;請各位先下載RTP的官方文檔《RFC 3550》和《RFC 3551》。《RFC 3550》總共有89頁&#xff0c;《RFC 3551》總共有44頁。本文下面所說的“頁數”是指在pdf閱讀器中顯示的頁數&#xff1a; 二、RTP協議簡介 根據《RFC 35…

HTTP協議的無狀態和無連接

無連接 ①無連接的含義 這里所說的無連接并不是指不連接&#xff0c;客戶與服務器之間的HTTP連接是一種一次性連接&#xff0c;它限制每次連接只處理一個請求&#xff0c;當服務器返回本次請求的應答后便立即關閉連接&#xff0c;下次請求再重新建立連接。這種一次性連接主要考…

Java知識速記:Lambda表達式

Java知識速記&#xff1a;Lambda表達式 一、什么是Lambda表達式&#xff1f; Lambda表達式是Java 8引入的一種簡潔的表示函數式接口的方法&#xff0c;它使得可以將函數作為參數傳遞&#xff0c;并且可以在代碼中以更簡潔的方式實現函數式編程。Lambda表達式的基本語法如下&a…

第31章 星騙計劃的推進與團隊協作

我回到自己的辦公室&#xff0c;在座位上剛坐下沒多久&#xff0c;還沒來得及好好整理一下思緒&#xff0c;就聽到一陣敲門聲。“請進。” 我抬頭說道&#xff0c;聲音中帶著一絲疲憊。借助情緒監測系統&#xff0c;我察覺到自己的壓力指數正處于高位&#xff0c;于是暗自提醒自…

半導體器件與物理篇7 微波二極管、量子效應和熱電子器件

基本微波技術 微波頻率&#xff1a;微波頻率涵蓋約從0.1GHz到3000GHz&#xff0c;相當于波長從300cm到0.01cm。 分布效應&#xff1a;電子部件在微波頻率&#xff0c;與其在較低頻率的工作行為不同。 輸運線&#xff1a;一個由電阻、電容、電感三種等效基本電路部件所組成的…

【C++】B2122 單詞翻轉

博客主頁&#xff1a; [小????????] 本文專欄: C 文章目錄 &#x1f4af;前言&#x1f4af;題目描述輸入格式輸出格式樣例 #1樣例輸入 #1樣例輸出 #1 &#x1f4af;一、我的做法代碼實現&#xff1a;代碼解析思路分析 &#x1f4af;二、老師的第一種做法代碼實現&a…

麥芯(MachCore)應用開發教程5 --- 工位和晶圓傳輸

麥芯是構建在windows系統上的設備應用操作系統&#xff0c;利用該系統可以快速高效的開發一款設備專用軟件。希望進一步了解請email: acloud163.com 黃國強 2025/02/03 一、工位與子設備的關系 想象工廠中的流水線工作站&#xff0c;每個工位&#xff08;Station&#xff09…

Python從0到100(八十七):CNN網絡詳細介紹及WISDM數據集模型仿真

前言&#xff1a; 零基礎學Python&#xff1a;Python從0到100最新最全教程。 想做這件事情很久了&#xff0c;這次我更新了自己所寫過的所有博客&#xff0c;匯集成了Python從0到100&#xff0c;共一百節課&#xff0c;幫助大家一個月時間里從零基礎到學習Python基礎語法、Pyth…

C++ Primer 迭代器

歡迎閱讀我的 【CPrimer】專欄 專欄簡介&#xff1a;本專欄主要面向C初學者&#xff0c;解釋C的一些基本概念和基礎語言特性&#xff0c;涉及C標準庫的用法&#xff0c;面向對象特性&#xff0c;泛型特性高級用法。通過使用標準庫中定義的抽象設施&#xff0c;使你更加適應高級…

【C++篇】位圖與布隆過濾器

目錄 一&#xff0c;位圖 1.1&#xff0c;位圖的概念 1.2&#xff0c;位圖的設計與實現 1.5&#xff0c;位圖的應用舉例 1.4&#xff0c;位圖常用應用場景 二&#xff0c;布隆過濾器 2.1&#xff0c;定義&#xff1a; 2.2&#xff0c;布隆過濾器的實現 2.3&#xff0c; 應…

VR觸感數據手套:觸感反饋賦予虛擬交互沉浸式體驗

隨著動作捕捉技術的蓬勃發展&#xff0c;動捕數據手套成為了手部動作捕捉與虛擬交互的便捷工具&#xff0c;為人們打開了通往虛擬世界的新大門。在眾多產品中&#xff0c;mHand Pro作為一款多功能兼具的VR動作捕捉數據手套&#xff0c;憑借其卓越的性能&#xff0c;在手部動作捕…

C# 結構體介紹

.NET學習資料 .NET學習資料 .NET學習資料 一、結構體的定義與基本使用 &#xff08;一&#xff09;定義結構體 在 C# 中&#xff0c;使用struct關鍵字來創建結構體。它就像是一個模板&#xff0c;能定義出符合特定需求的數據結構。比如&#xff0c;若要跟蹤圖書館中書的信息…

圖像噪聲處理技術:讓圖像更清晰的藝術

在這個數字化時代&#xff0c;圖像作為信息傳遞的重要載體&#xff0c;其質量直接影響著我們的視覺體驗和信息解讀。然而&#xff0c;在圖像采集、傳輸或處理過程中&#xff0c;難免會遇到各種噪聲干擾&#xff0c;如高斯噪聲、椒鹽噪聲等&#xff0c;這些噪聲會降低圖像的清晰…

追逐低空經濟,無人機研學技術詳解

追逐低空經濟&#xff0c;無人機研學技術成為了一個備受關注的領域。以下是對無人機研學技術的詳細解析&#xff1a; 一、無人機研學技術概述 無人機研學技術是以無人機為核心&#xff0c;結合航空科技、電子技術、機械原理等多領域知識的一種教育實踐活動。它旨在通過理論學習…

(done) MIT6.S081 2023 學習筆記 (Day7: LAB6 Multithreading)

網頁&#xff1a;https://pdos.csail.mit.edu/6.S081/2023/labs/thread.html (任務1教會了你如何用 C 語言調用匯編&#xff0c;編譯后鏈接即可) 任務1&#xff1a;Uthread: switching between threads (完成) 在這個練習中&#xff0c;你將設計一個用戶級線程系統中的上下文切…

Kubernetes學習之通過Service訪問Pod

一、基礎概述 1.當通過deployment等controller動態創建和銷毀pod使得每個pod都有自己的ip地址&#xff0c;當controller用新的pod替代發生故障的pod時&#xff0c;新的pod會分配到新的ip地址&#xff0c;那么客戶端如何穩定的找到并訪問pod提供的服務。 2.創建service service從…

【優先算法】專題——前綴和

目錄 一、【模版】前綴和 參考代碼&#xff1a; 二、【模版】 二維前綴和 參考代碼&#xff1a; 三、尋找數組的中心下標 參考代碼&#xff1a; 四、除自身以外數組的乘積 參考代碼&#xff1a; 五、和為K的子數組 參考代碼&#xff1a; 六、和可被K整除的子數組 參…