計數應用: 資深公民的數量 Number of Senior Citizens_Leetcode #2678

閱讀時間約 3 分鐘

題目敘述 Number of Senior Citizens


給定一個旅客的車票字串陣列,每個字串的最後第四個和第三個數字代表旅客的年齡。

例如: XXX...XXX2015 代表旅客年齡為20歲。

請計算總共有多少位乘客的年齡 > 60 歲?


測試範例

Example 1:

Input: details = ["7868190130M7522","5303914400F9211","9273338290F4010"]
Output: 2
Explanation: The passengers at indices 0, 1, and 2 have ages 75, 92, and 40. Thus, there are 2 people who are over 60 years old.

Example 2:

Input: details = ["1313579440F2036","2921522980M5644"]
Output: 0
Explanation: None of the passengers are older than 60.

約束條件

Constraints:

  • 1 <= details.length <= 100

輸入陣列長度介於1~100之間。

  • details[i].length == 15

每個旅客字串長度為15

  • details[i] consists of digits from '0' to '9'.

旅客字串裡面的數字一定在0~9的範圍內

  • details[i][10] is either 'M' or 'F' or 'O'.

第11碼代表性別

  • The phone numbers and seat numbers of the passengers are distinct.

每位旅客的電話號碼和座號保證都相異


演算法 生成式 + 計數


根據題意,擷取年齡所在的字串位置,轉成數字,統計有多少位旅客 > 60歲。

Python生成式的教學請參考這篇文章


程式碼 生成式 + 計數

class Solution:

    def countSeniors(self, details: List[str]) -> int:
       

        return sum( ( 1  for d in details if int(d[-4:-2]) > 60 ) )

複雜度分析

時間複雜度:O(n)

線性掃描每一筆旅客資料,所需時間為O(n)


空間複雜度: O(1)

所用到的都是固定尺寸的臨時變數,所需空間為O(1),常數級別。


Reference

[1] Number of Senior Citizens - LeetCode

avatar-img
88會員
425內容數
由有業界實戰經驗的演算法工程師, 手把手教你建立解題的框架, 一步步寫出高效、清晰易懂的解題答案。 著重在讓讀者啟發思考、理解演算法,熟悉常見的演算法模板。 深入淺出地介紹題目背後所使用的演算法意義,融會貫通演算法與資料結構的應用。 在幾個經典的題目融入一道題目的多種解法,或者同一招解不同的題目,擴展廣度,並加深印象。
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
題目要求計算兩個二進位字串的相加,並以字串的形式輸出。 字串內容只包含'0'或'1'字元。 複雜度分析 時間複雜度為O(m+n),空間複雜度為O(m+n)。
給定木板的長度和切割點位置,找到最小總切割成本。透過DP動態規劃和區間DP框架,定義DP狀態並推導出最小切割成本的遞迴關係式。複雜度分析為時間複雜度O(n^3)和空間複雜度O(n^2)。關鍵知識點在於挖掘切割問條的共通模式,透過範例和圖解輔助思考。
給定一個9x9的輸入陣列代表數獨題目已經 部分作答 的狀態, 請驗證已經作答的部分是否為合法的Sudoku的輸入。 註: 合法的Sudoku輸入必須滿足這些規則 1~9每一直排恰好出現一次。 1~9每一橫排恰好出現一次。 1~9在3x3的小方陣裏恰好出現一次。
題目敘述 Minimum Deletions to Make String Balanced 給定一個只會有包含'a'b或'b'的輸入字串s。 每次操作可以任選一個字元刪除。 請問最少需要多少次操作,才會使得所有的'b'都在'a'後面? 測試範例 Example 1: Input: s
題目敘述: Reverse Bits 給定一個32bit的整數,請逆序翻轉其二進位表達式,輸出翻轉過後的數字。 例如輸入是二進位1010111 逆序翻轉後是 1110101,對應的十進位數值是117 測試範例 Example 1: Input: n = 00000010100101000
題目敘述 Count Number of Teams 給定一個輸入陣列rating,裡面代表每位成員的評分 挑選三位成員,對應到三個index i, j, k 且 i < j < k 如果rating[i] < rating[j] < rating[k] ,則此三人可以組成一隊。 或者ra
題目要求計算兩個二進位字串的相加,並以字串的形式輸出。 字串內容只包含'0'或'1'字元。 複雜度分析 時間複雜度為O(m+n),空間複雜度為O(m+n)。
給定木板的長度和切割點位置,找到最小總切割成本。透過DP動態規劃和區間DP框架,定義DP狀態並推導出最小切割成本的遞迴關係式。複雜度分析為時間複雜度O(n^3)和空間複雜度O(n^2)。關鍵知識點在於挖掘切割問條的共通模式,透過範例和圖解輔助思考。
給定一個9x9的輸入陣列代表數獨題目已經 部分作答 的狀態, 請驗證已經作答的部分是否為合法的Sudoku的輸入。 註: 合法的Sudoku輸入必須滿足這些規則 1~9每一直排恰好出現一次。 1~9每一橫排恰好出現一次。 1~9在3x3的小方陣裏恰好出現一次。
題目敘述 Minimum Deletions to Make String Balanced 給定一個只會有包含'a'b或'b'的輸入字串s。 每次操作可以任選一個字元刪除。 請問最少需要多少次操作,才會使得所有的'b'都在'a'後面? 測試範例 Example 1: Input: s
題目敘述: Reverse Bits 給定一個32bit的整數,請逆序翻轉其二進位表達式,輸出翻轉過後的數字。 例如輸入是二進位1010111 逆序翻轉後是 1110101,對應的十進位數值是117 測試範例 Example 1: Input: n = 00000010100101000
題目敘述 Count Number of Teams 給定一個輸入陣列rating,裡面代表每位成員的評分 挑選三位成員,對應到三個index i, j, k 且 i < j < k 如果rating[i] < rating[j] < rating[k] ,則此三人可以組成一隊。 或者ra
你可能也想看
Google News 追蹤
Thumbnail
這個秋,Chill 嗨嗨!穿搭美美去賞楓,裝備款款去露營⋯⋯你的秋天怎麼過?秋日 To Do List 等你分享! 秋季全站徵文,我們準備了五個創作主題,參賽還有機會獲得「火烤兩用鍋」,一起來看看如何參加吧~
Thumbnail
11/20日NVDA即將公布最新一期的財報, 今天Sell Side的分析師, 開始調高目標價, 市場的股價也開始反應, 未來一週NVDA將重新回到美股市場的焦點, 今天我們要分析NVDA Sell Side怎麼看待這次NVDA的財報預測, 以及實際上Buy Side的倉位及操作, 從
Thumbnail
Hi 大家好,我是Ethan😊 相近大家都知道保濕是皮膚保養中最基本,也是最重要的一步。無論是在畫室裡長時間對著畫布,還是在旅途中面對各種氣候變化,保持皮膚的水分平衡對我來說至關重要。保濕化妝水不僅能迅速為皮膚補水,還能提升後續保養品的吸收效率。 曾經,我的保養程序簡單到只包括清潔和隨意上乳液
Thumbnail
需求情境: 一般的看盤軟體,雖然都能針對一籃子自選股票,列出其即時行情和當天漲幅,但若要看「五日漲幅」呢?那就少見了,但這對我很重要。因為小部位的波段性價差交易是個好策略,這時候若能排序好一整排看下來,可以節省大量點來點去的成本,很有價值,所以就來自己刻。 解決方案: 從大處著眼,UI 最外層
Thumbnail
在凱鈿的實習生永續世界中,每一位實習生都擁有自己的獨特故事和挑戰。從社群貼文製作到員工活動企劃,再到數位永續種子培訓計畫領頭羊的角色,這篇文章分享了一位實習生的學習背景、工作內容以及對企業文化的感受。
Thumbnail
前兩篇篩選機制針對篩選指標做完整的討論,這篇來針對權重計算來討論,權重計算的目的為何?另外有提到預擬資產管理規模,這個特殊方式似乎沒有在其他的高股息指數上看到,為何有此設計?最後討論此檔指數的優點與缺點,來探討看看。     大綱: 1.預擬資產管理做什麼用? 2.權重
Thumbnail
c web3 虛擬貨幣 NFT 等等 提供相關技術的服務商 應該如何撰寫自家的行銷文 說明文 才能使準投資者產生信賴感 讓自家服務在愈來愈多的競爭廠商中脫穎而出 得到最多優質客戶的長期青睞 幸福課程 幸福教練黃老師 / 潮資訊媒體 社群編輯 要撰寫引人注目的行銷文或說明文
Thumbnail
商業簡報除了需要好看吸引,也需要帶給決策者可付諸行動的洞見(actionable business intelligence)。在大家都可以找到的數據之上,如何做好篩選和分析,成就了你與其他人的分野。環觀全球仍是籠罩在後疫情、地緣政治、通漲升溫下,剛剛過去了的半年結,你的分析又為老闆帶來了一些甚麼?
Thumbnail
14日,緬甸軍方產業部長 察里丹(Dr. Charlie Than)與俄國駐緬大使里斯托帕多夫(Nikolay Listopadov)在首都奈比多商議重啟撣邦首府東枝鄰近的二號鋼鐵廠。軍營媒體表示,察里丹和里斯托帕多夫針對雙邊經濟關係進行會談,包含派遣俄技術專家視察鋼鐵廠、在雙方政府許可下生產藥品及
Thumbnail
文、圖/勤業眾信提供   近期5G部署成為全球熱議的話題,也帶動了整個科技產業鏈的投資與關注,勤業眾信聯合會計師事務今(25)發布勤業眾信《2020全球高科技、媒體及電信產業趨勢預測》(Deloitte TMT Predictions 2020),彙整2020至2030年間的科技產業脈動,提出
Thumbnail
這個秋,Chill 嗨嗨!穿搭美美去賞楓,裝備款款去露營⋯⋯你的秋天怎麼過?秋日 To Do List 等你分享! 秋季全站徵文,我們準備了五個創作主題,參賽還有機會獲得「火烤兩用鍋」,一起來看看如何參加吧~
Thumbnail
11/20日NVDA即將公布最新一期的財報, 今天Sell Side的分析師, 開始調高目標價, 市場的股價也開始反應, 未來一週NVDA將重新回到美股市場的焦點, 今天我們要分析NVDA Sell Side怎麼看待這次NVDA的財報預測, 以及實際上Buy Side的倉位及操作, 從
Thumbnail
Hi 大家好,我是Ethan😊 相近大家都知道保濕是皮膚保養中最基本,也是最重要的一步。無論是在畫室裡長時間對著畫布,還是在旅途中面對各種氣候變化,保持皮膚的水分平衡對我來說至關重要。保濕化妝水不僅能迅速為皮膚補水,還能提升後續保養品的吸收效率。 曾經,我的保養程序簡單到只包括清潔和隨意上乳液
Thumbnail
需求情境: 一般的看盤軟體,雖然都能針對一籃子自選股票,列出其即時行情和當天漲幅,但若要看「五日漲幅」呢?那就少見了,但這對我很重要。因為小部位的波段性價差交易是個好策略,這時候若能排序好一整排看下來,可以節省大量點來點去的成本,很有價值,所以就來自己刻。 解決方案: 從大處著眼,UI 最外層
Thumbnail
在凱鈿的實習生永續世界中,每一位實習生都擁有自己的獨特故事和挑戰。從社群貼文製作到員工活動企劃,再到數位永續種子培訓計畫領頭羊的角色,這篇文章分享了一位實習生的學習背景、工作內容以及對企業文化的感受。
Thumbnail
前兩篇篩選機制針對篩選指標做完整的討論,這篇來針對權重計算來討論,權重計算的目的為何?另外有提到預擬資產管理規模,這個特殊方式似乎沒有在其他的高股息指數上看到,為何有此設計?最後討論此檔指數的優點與缺點,來探討看看。     大綱: 1.預擬資產管理做什麼用? 2.權重
Thumbnail
c web3 虛擬貨幣 NFT 等等 提供相關技術的服務商 應該如何撰寫自家的行銷文 說明文 才能使準投資者產生信賴感 讓自家服務在愈來愈多的競爭廠商中脫穎而出 得到最多優質客戶的長期青睞 幸福課程 幸福教練黃老師 / 潮資訊媒體 社群編輯 要撰寫引人注目的行銷文或說明文
Thumbnail
商業簡報除了需要好看吸引,也需要帶給決策者可付諸行動的洞見(actionable business intelligence)。在大家都可以找到的數據之上,如何做好篩選和分析,成就了你與其他人的分野。環觀全球仍是籠罩在後疫情、地緣政治、通漲升溫下,剛剛過去了的半年結,你的分析又為老闆帶來了一些甚麼?
Thumbnail
14日,緬甸軍方產業部長 察里丹(Dr. Charlie Than)與俄國駐緬大使里斯托帕多夫(Nikolay Listopadov)在首都奈比多商議重啟撣邦首府東枝鄰近的二號鋼鐵廠。軍營媒體表示,察里丹和里斯托帕多夫針對雙邊經濟關係進行會談,包含派遣俄技術專家視察鋼鐵廠、在雙方政府許可下生產藥品及
Thumbnail
文、圖/勤業眾信提供   近期5G部署成為全球熱議的話題,也帶動了整個科技產業鏈的投資與關注,勤業眾信聯合會計師事務今(25)發布勤業眾信《2020全球高科技、媒體及電信產業趨勢預測》(Deloitte TMT Predictions 2020),彙整2020至2030年間的科技產業脈動,提出