【CSP】202303-2_墾田計劃Python實現

文章目錄

    • @[toc]
      • 試題編號
      • 試題名稱
      • 時間限制
      • 內存限制
      • 問題描述
      • 輸入格式
      • 輸出格式
      • 樣例輸入1
      • 樣例輸出1
      • 樣例解釋
      • 樣例輸入2
      • 樣例輸出2
      • 樣例解釋
      • 子任務
      • `Python`實現

試題編號

202303-2

試題名稱

墾田計劃

時間限制

1.0s

內存限制

512.0MB

問題描述

  • 頓頓總共選中了 n n n塊區域準備開墾田地,由于各塊區域大小不一,開墾所需時間也不盡相同。據估算,其中第 i i i ( 1 ≤ i ≤ n ) (1 \leq i \leq n) (1in)區域的開墾耗時為 t i t_{i} ti?天,這 n n n塊區域可以同時開墾,所以總耗時 t T o t a l t_{Total} tTotal?取決于耗時最長的區域,即:

t T o t a l = max ? { t 1 , t 2 , ? , t n } t_{Total} = \max\set{t_{1} , t_{2} , \cdots , t_{n}} tTotal?=max{t1?,t2?,?,tn?}

  • 為了加快開墾進度,頓頓準備在部分區域投入額外資源來縮短開墾時間,具體來說:
    • 在第 i i i塊區域每投入 c i c_{i} ci?單位資源,便可將其開墾耗時縮短 1 1 1
    • 耗時縮短天數以整數記,即第 i i i塊區域投入資源數量必須是 c i c_{i} ci?的整數倍
    • 在第 i i i塊區域最多可投入 c i × ( t i ? k ) c_{i} \times (t_{i} - k) ci?×(ti??k)單位資源,將其開墾耗時縮短為 k k k
    • 這里的 k k k表示開墾一塊區域的最少天數,滿足 0 < k ≤ min ? { t 1 , t 2 , ? , t n } 0 < k \leq \min\set{t_{1} , t_{2} , \cdots ,t_{n}} 0<kmin{t1?,t2?,?,tn?};換言之,如果無限制地投入資源,所有區域都可以用 k k k天完成開墾
  • 現在頓頓手中共有 m m m單位資源可供使用,試計算開墾 n n n塊區域最少需要多少天

輸入格式

  • 從標準輸入讀入數據
  • 輸入共 n + 1 n + 1 n+1
  • 輸入的第一行包含空格分隔的三個正整數 n n n m m m k k k,分別表示待開墾的區域總數、頓頓手上的資源數量和每塊區域的最少開墾天數
  • 接下來 n n n行,每行包含空格分隔的兩個正整數 t i t_{i} ti? c i c_{i} ci?,分別表示第 i i i塊區域開墾耗時和將耗時縮短 1 1 1天所需資源數量

輸出格式

  • 輸出到標準輸出
  • 輸出一個整數,表示開墾 n n n塊區域的最少耗時

樣例輸入1

4 9 2
6 1
5 1
6 2
7 1

樣例輸出1

5

樣例解釋

  • 如下表所示,投入 5 5 5單位資源即可將總耗時縮短至 5 5 5天,此時頓頓手中還剩余 4 4 4單位資源,但無論如何安排,也無法使總耗時進一步縮短
i i i基礎耗時 t i t_{i} ti?縮減 1 1 1天所需資源 c i c_{i} ci?投入資源數量實際耗時
1 1 1 6 6 6 1 1 1 1 1 1 5 5 5
2 2 2 5 5 5 1 1 1 0 0 0 5 5 5
3 3 3 6 6 6 2 2 2 2 2 2 5 5 5
4 4 4 7 7 7 1 1 1 2 2 2 5 5 5

樣例輸入2

4 30 2
6 1
5 1
6 2
7 1

樣例輸出2

2

樣例解釋

  • 投入 20 20 20單位資源,恰好可將所有區域開墾耗時均縮短為 k = 2 k = 2 k=2天;受限于 k k k,剩余的 10 10 10單位資源無法使耗時進一步縮短

子任務

  • 70 % 70\% 70%的測試數據滿足: 0 < n 0 < n 0<n t i t_{i} ti? c i ≤ 100 c_{i} \leq 100 ci?100 0 < m ≤ 1 0 6 0 < m \leq 10^{6} 0<m106
  • 全部的測試數據滿足: 0 < n 0 < n 0<n t i t_{i} ti? c i ≤ 1 0 5 c_{i} \leq 10^{5} ci?105 0 < m ≤ 1 0 9 0 < m \leq 10^{9} 0<m109

Python實現

n, m, k = map(int, input().split())days = []
for _ in range(n):days.append(list(map(int, input().split())))def judge(x):sum = 0for i in range(n):if days[i][0] < x:continuesum += (days[i][0] - x) * days[i][1]if sum <= m:return Trueelse:return Falsel, r = k, max(days, key=lambda x: x[0])[0]while l <= r:mid = (l + r) // 2if judge(mid):r = mid - 1else:l = mid + 1print(l)

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

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

相關文章

基于STM32 + DMA介紹,應用和步驟詳解(ADC多通道)

前言 本篇博客主要學習了解DMA的工作原理和部分寄存器解析&#xff0c;針對ADC多通道來對代碼部分&#xff0c;應用部分作詳細講解&#xff0c;掌握代碼編程原理。本篇博客大部分是自己收集和整理&#xff0c;如有侵權請聯系我刪除。 本次博客開發板使用的是正點原子精英版&am…

23種策略模式之策略模式

文章目錄 前言優缺點使用場景角色定義UML模擬示例小結 前言 在軟件開發中&#xff0c;設計模式是為了解決常見問題而提供的一套可重用的解決方案。策略模式&#xff08;Strategy Pattern&#xff09;是其中一種常見的設計模式&#xff0c;它屬于行為型模式。該模式的核心思想是…

Java程序設計實驗6 | 集合類

*本文是博主對Java各種實驗的再整理與詳解&#xff0c;除了代碼部分和解析部分&#xff0c;一些題目還增加了拓展部分&#xff08;?&#xff09;。拓展部分不是實驗報告中原有的內容&#xff0c;而是博主本人自己的補充&#xff0c;以方便大家額外學習、參考。 &#xff08;解…

基于ssm的大型商場會員管理系統論文

摘 要 進入信息時代以來&#xff0c;很多數據都需要配套軟件協助處理&#xff0c;這樣可以解決傳統方式帶來的管理困擾。比如耗時長&#xff0c;成本高&#xff0c;維護數據困難&#xff0c;數據易丟失等缺點。本次使用數據庫工具MySQL和編程框架SSM開發的大型商場會員管理系統…

【漏洞復現】FLIR AX8紅外線熱成像儀命令執行漏洞

漏洞描述 eledyne FLIR 設計、開發、制造以及強大的傳感和意識技術。自透射熱圖像、可見光圖像、可見頻率分析、來自測量和診斷的先進威脅測量系統以及日常生活的創新解決方案。 Teledyne FLIR 提供多種產品用于政府、國防、工業和商業市場。我們的產品,緊急救援人員,軍事人…

插入排序與希爾排序(C語言實現)

1.插入排序 由上面的動圖可以知道插入排序的邏輯就是從第一個元素開始往后遍歷&#xff0c;如果找到比前一個元素小的&#xff08;或者大的&#xff09;就往前排&#xff0c;所以插入排序的每一次遍歷都會保證前面的數據是有序的&#xff0c;接下類用代碼進行講解。 我們這里傳…

bash中通過變量中的內容獲取對應的關聯數組

bash中通過變量中的內容獲取對應的關聯數組 Bash declare 手冊&#xff1a; https://phoenixnap.com/kb/bash-declare 實際問題&#xff1a; 在 bash 中創建了多個關聯數組&#xff0c;需要根據輸入的值&#xff0c;獲取不同的關聯數組。 可以使用 if 進行多次判斷&#xff…

智能優化算法應用:基于浣熊算法無線傳感器網絡(WSN)覆蓋優化 - 附代碼

智能優化算法應用&#xff1a;基于浣熊算法無線傳感器網絡(WSN)覆蓋優化 - 附代碼 文章目錄 智能優化算法應用&#xff1a;基于浣熊算法無線傳感器網絡(WSN)覆蓋優化 - 附代碼1.無線傳感網絡節點模型2.覆蓋數學模型及分析3.浣熊算法4.實驗參數設定5.算法結果6.參考文獻7.MATLAB…

解決HTTP錯誤500.19 - internal server error -內部服務器錯誤的終極指南

在開發和維護網絡應用程序時&#xff0c;難免會遇到各種HTTP錯誤代碼。其中&#xff0c;HTTP錯誤500.19 - 內部服務器錯誤可謂是最令人頭痛的問題之一。當你的應用程序遇到這個錯誤時&#xff0c;它似乎就像一道墻壁&#xff0c;擋住了你前進的道路。但別擔心&#xff0c;本篇技…

Git全局設置命令---設置提交人姓名

介紹 使用git命令設置提交人姓名 命令 git config --global user.name "超音速"

react-photo-view 的介紹、安裝、使用。

目錄 基本介紹 安裝 使用 基本介紹 react-photo-view 是一個基于 React 的圖片查看器組件&#xff0c;用于在網頁上展示和瀏覽圖片。該組件提供了用戶友好的界面和交互&#xff0c;可以輕松地在應用程序中集成并使用。 支持觸摸手勢&#xff0c;拖動/平移/物理效果滑動…

修改移遠提供的GobiNet、quectel-CM源碼,使其支持有方N720 4G模塊

最近在研究imx6ull linux下4G模塊驅動的移植&#xff0c;參考的移遠ec20的移植方法&#xff0c;添加了GobiNet驅動&#xff0c;編譯了quectel-CM工具&#xff0c;并且可以正常撥號&#xff0c;分配到ip&#xff0c;如下&#xff1a; ping外網也沒有壓力&#xff0c;如下…

軟件工程 考試重點

結構化分析 考慮數據和處理的需求分析方法&#xff0c;稱為結構分析方法&#xff08;SA&#xff09; 結構化分析基于 分解、抽象 的基本思想 分解&#xff1a;對于復雜的系統&#xff0c;為將復雜度降低到可以掌握的程度&#xff0c;可以把大問題分解為若干個小問題&#xf…

【go-zero】go-zero使用ent框架 如何使用源生sql完成查詢

背景 本篇教程我們采用的是go-zero的快速腳手架工具 simple-admin 框架的開發 github地址:https://github.com/suyuan32/simple-admin-core 因為框架推薦使用Ent 這篇教程我們則對Ent的基本使用的幾種形式進行一個總結 一、開啟ent的源生sql 1、simple-admin生成rpc 【go-…

QT 中 線程池 (備查)

QRunnable類 API 1&#xff09;在Qt中使用線程池需要先創建任務&#xff0c;添加到線程池中的每一個任務都需要是一個 QRunnable 類型&#xff0c;因此在程序中需要創建子類繼承 QRunnable 這個類。 2&#xff09;然后重寫 run() 方法&#xff0c;在這個函數中編寫要在線程池中…

RabbitMQ使用指南

介紹主要特點常用插件使用RabbitMQ的插件常用插件列表 應用場景Kafka與RabbitMq的區別主要優缺點安裝步驟插件安裝步驟 使用RabbitMqJava代碼示例拓展 介紹 RabbitMQ是由Erlang語言開發的&#xff0c;基于AMQP&#xff08;高級消息隊列協議&#xff09;協議實現的開源消息代理…

元宇宙紅色展廳VR虛擬展館提高受訓者的參與感

生活在和平年代的新一代青少年&#xff0c;可能對革命先烈英勇事跡難以有很深的體會&#xff0c;無法切實感受到中國共產黨無畏犧牲、誓死保家衛國的紅色精神&#xff0c;因此借助VR虛擬現實制作技術&#xff0c;讓參觀者們走近革命先烈中&#xff0c;感受老一輩無產階級革命家…

搜索引擎和網絡瀏覽器之間的區別

術語“搜索引擎”和“網絡瀏覽器”與互聯網有關。搜索引擎基本上是用于通過 Internet 搜索信息的工具&#xff0c;而 Web 瀏覽器是用于加載網頁等 HTML 文件的應用軟件。 閱讀本文以了解有關搜索引擎和網絡瀏覽器以及它們之間的區別的更多信息。 什么是搜索引擎&#xff1f; …

TrustZone之SMC異常

作為支持兩個安全狀態的一部分&#xff0c;該架構包括了Secure Monitor Call&#xff08;SMC&#xff09;指令。執行SMC會引發Secure Monitor Call異常&#xff0c;該異常目標是EL3。 通常&#xff0c;SMC用于請求服務&#xff0c;可以是來自駐留在EL3中的固件&#xff0c;也可…

微信小程序適配方案:rpx(responsive pixel響應式像素單位)

小程序適配單位&#xff1a;rpx 規定任何屏幕下寬度為750rpx 小程序會根據屏幕的寬度自動計算rpx值的大小 Iphone6下&#xff1a;1rpx 1物理像素 0.5css 小程序編譯后&#xff0c;rpx會做一次px換算&#xff0c;換算是以375個物理像素為基準&#xff0c;也就是在一個寬度…