P12167 [藍橋杯 2025 省 C/Python A] 倒水

P12167 [藍橋杯 2025 省 C/Python A] 倒水

題目描述

小藍有 n n n 個裝了水的瓶子,從左到右擺放,第 i i i 個瓶子里裝有 a i a_i ai? 單位的水。為了美觀,小藍將水循環染成了 k k k 種顏色,也就是說,第 i i i 個瓶子和第 i + k i + k i+k 個瓶子里的水的顏色相同。

小藍發現有的瓶子里的水太少了,因此他規定如果第 i i i 個瓶子和第 j j j 個瓶子中的水顏色相同并且滿足 i < j i < j i<j,即可將任意整數單位的水從第 i i i 個水瓶倒出,倒入第 j j j 個水瓶中。小藍想知道任意次操作后所有瓶子中的水的最小值 min ? { a i } \min\{a_i\} min{ai?} 最大可以是多少?

輸入格式

輸入的第一行包含兩個正整數 n , k n, k n,k,用一個空格分隔。

第二行包含 n n n 個正整數 a 1 , a 2 , ? , a n a_1, a_2, \cdots, a_n a1?,a2?,?,an?,相鄰整數之間使用一個空格分隔。

輸出格式

輸出一行包含一個整數表示答案。

輸入輸出樣例 #1
輸入 #1
7 3
8 5 5 2 2 3 4
輸出 #1
3
說明/提示
樣例說明

其中一種方案:

  • a 1 a_1 a1? a 4 a_4 a4? 倒入 3 3 3 單位;
  • a 2 a_2 a2? a 5 a_5 a5? 倒入 2 2 2 單位;
  • a 3 a_3 a3? a 6 a_6 a6? 倒入 1 1 1 單位;
    最終每個瓶子里的水: 5 , 3 , 4 , 5 , 4 , 4 , 4 5, 3, 4, 5, 4, 4, 4 5,3,4,5,4,4,4,最小值為 3 3 3
評測用例規模與約定
  • 對于 40 % 40\% 40% 的評測用例, 1 ≤ n , a i ≤ 100 1 \leq n, a_i \leq 100 1n,ai?100
  • 對于所有評測用例, 1 ≤ n , a i ≤ 100000 1 \leq n, a_i \leq 100000 1n,ai?100000 1 ≤ k ≤ n 1 \leq k \leq n 1kn

P12167 [藍橋杯 2025 省 C/Python A] 倒水

【思路分析】

求最小值最大,一般考慮二分。而這個題可以按照不同顏色進行分組,判斷能否將所有分組的最小值達到某數x,而x通過二分進行查找

import java.util.*;
import java.io.*;
public class Main {static int[] a = new int[100005];static int n, k;// 檢查是否可以使每個顏色組的瓶子水量最小值達到 xstatic boolean check(int x) {// 遍歷每個顏色組for (int i = 1; i <= k; i++) {// j 用于遍歷當前顏色組內的瓶子int j = i;// d 用于記錄當前顏色組內水量的盈余情況long d = 0;// 遍歷當前顏色組內的所有瓶子while (j <= n) {// 如果當前瓶子的水量大于等于 xif (a[j] >= x) {// 計算當前瓶子的水量盈余,并累加到 d 中d += a[j] - x;} else {// 如果當前瓶子的水量小于 x,計算需要補充的水量,并從 d 中扣除d -= (x - a[j]);}// 如果盈余水量小于 0,說明無法使當前顏色組內所有瓶子的水量都達到 xif (d < 0) {return false;}// 移動到下一個同顏色組的瓶子j += k;}}// 如果所有顏色組都能滿足條件,則返回 truereturn true;}public static void main(String[] args) throws Exception {BufferedReader br = new BufferedReader(new InputStreamReader(System.in));String[] row1 = br.readLine().split(" ");n = Integer.parseInt(row1[0]);k = Integer.parseInt(row1[1]);String[] data = br.readLine().split(" ");for (int i = 1; i <= n; i++) {a[i] = Integer.parseInt(data[i - 1]);}int l = 1;int r = 100000;while (l <= r) {int mid = (l + r) >> 1;if (check(mid)) {l = mid + 1;} else {r = mid - 1;}}System.out.println(l - 1);br.close();}
}    

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

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

相關文章

短視頻矩陣系統可視化剪輯功能開發,支持OEM

在短視頻營銷與內容創作競爭日益激烈的當下&#xff0c;矩陣系統中的可視化剪輯功能成為提升內容產出效率與質量的關鍵模塊。它以直觀的操作界面和強大的編輯能力&#xff0c;幫助創作者快速將創意轉化為優質視頻。本文將結合實際開發經驗&#xff0c;從需求分析、技術選型到核…

制作一款打飛機游戲22:表格導出

編輯器功能擴展 今天&#xff0c;我想讓編輯器能夠處理一個數組&#xff0c;這是編輯器將要編輯的東西&#xff0c;它只編輯數組。這些區域在后續的不同版本的編輯器中會有不同的含義&#xff0c;但現在我想創建一個模板&#xff0c;能夠加載一個二維數組&#xff0c;并將二維…

AI數據分析的利器:解鎖BI工具的無限潛力

在數字化浪潮席卷全球的今天&#xff0c;數據已成為企業最寶貴的資產之一。如何高效、準確地分析這些數據&#xff0c;挖掘其中的價值&#xff0c;成為企業決策的關鍵。AI數據分析&#xff0c;作為新時代的數據分析利器&#xff0c;正逐漸改變著企業的決策方式。而BI&#xff0…

【每天一個知識點】IPv4(互聯網協議版本4)和IPv6(互聯網協議版本6)

IPv4&#xff08;互聯網協議版本4&#xff09;和IPv6&#xff08;互聯網協議版本6&#xff09;是用于在互聯網上標識和定位設備的兩種主要協議。它們的主要區別在于地址空間、結構、以及一些附加功能。以下是兩者的對比&#xff1a; 1. 地址長度 IPv4: 地址長度為32位&#xf…

numpy.random.normal與numpy.random.randn的區別與聯系

先說結論&#xff1a; numpy.random.normal 對應的是 正態分布&#xff0c;numpy.random.randn 對應的是標準正態分布&#xff0c;所以 numpy.random.randn 是 numpy.random.normal 的一個特例。 1. numpy.random.normal 從正態&#xff08;高斯&#xff09;分布中抽取隨機樣…

基于 EFISH-SBC-RK3588 的無人機智能巡檢終端方案?

一、硬件架構設計? ?核心算力平臺&#xff08;EFISH-SBC-RK3588&#xff09;? ?異構計算能力?&#xff1a;搭載 8 核 ARM 架構&#xff08;4Cortex-A762.4GHz 4Cortex-A551.8GHz&#xff09;&#xff0c;集成 6 TOPS NPU 與 Mali-G610 GPU&#xff0c;支持多傳感器數據并…

軟測面經(私)

測試流程 分析需求——>制定測試計劃——>設計測試用例——>執行測試——>編寫測試報告 黑盒測試 等價類劃分、邊界值分析法、猜錯法、隨機數法、因果圖。 白盒測試 代碼檢查法、程序變異、靜態結構分析法、靜態質量度量法、符號測試法、邏輯覆蓋法、域測試、…

那些年踩過的坑之Arrays.asList

一、前言 熟悉開發的兄弟都知道&#xff0c;在寫新增和刪除功能的時候&#xff0c;大多數時候會寫成批量的&#xff0c;原因也很簡單&#xff0c;批量既支持單個也支持多個對象的操作&#xff0c;事情也是發生在這個批量方法的調用上&#xff0c;下面我簡單說一下這個事情。 二…

通過VIN車輛識別代碼查詢_精準版API,獲取車輛精準參數

通過17位VIN碼的精準匹配&#xff0c;幫助用戶快速獲取車輛的品牌、型號、出廠日期、排量、外觀、車輛型號等詳細參數。這一API廣泛應用于二手車交易、車輛租賃、配件采購和車輛維修等領域&#xff0c;為用戶提供一個高效、準確的解決方案。 代碼示例 返回格式&#xff1a;js…

Virtuoso ADE采用Spectre仿真中出現MOS管最小長寬比滿足要求依然報錯的情況解決方法

在ADE仿真中錯誤問題如下&#xff1a; ERROR (CMI-2440): "xxx.scs" 46338: I2.M1: The length, width, or area of the instance does not fit the given lmax-lmin, wmax-wmin, or areamax-areamin range for any model in the I2.M3.nch_hvt group. The channel w…

LeetCode hot 100—最長有效括號

題目 給你一個只包含 ( 和 ) 的字符串&#xff0c;找出最長有效&#xff08;格式正確且連續&#xff09;括號子串的長度。 示例 示例 1&#xff1a; 輸入&#xff1a;s "(()" 輸出&#xff1a;2 解釋&#xff1a;最長有效括號子串是 "()"示例 2&#xf…

Vue3集成sass

安裝依賴 pnpm add -D sass-embedded配置全局變量 新建文件 src/styles/variables.scss配置Vite 修改 vite.config.ts variables.scss $base-color: bluevite.config.ts // https://vite.dev/config/ export default defineConfig({plugins: [vue(),],resolve: {alias: {:…

【力扣題目分享】棧專題(C++)

目錄 關于棧的題目&#xff1a; 1. 最小棧&#xff1a; 思路&#xff1a; 實現代碼(最終)&#xff1a; 2. 棧的壓入、彈出序列&#xff1a; 思路&#xff1a; 實現代碼&#xff1a; 3. 逆波蘭表達式求值&#xff1a; 思路&#xff1a; 實現代碼&#xff1a; 深入了解…

Office 2019 (含Visio+Project)官方IOS 下載

Microsoft Office 2019 是微軟公司推出的一款辦公軟件套裝&#xff0c; 主要包括Word、Excel、PowerPoint、Outlook、Visio、Access、Publisher、OneDrive for Business 和Skype for Business等組件。 這些組件適用于Windows和MacOS平臺&#xff0c;支持多種語言&#xff0c…

遙測終端機,推動灌區流量監測向數據驅動躍遷

灌區范圍那么大&#xff0c;每一滴水怎么流都關系到糧食夠不夠吃&#xff0c;還有生態能不能平衡。過去靠人工巡查、測量&#xff0c;就像拿著算盤想算明白大數據&#xff0c;根本滿足不了現在水利管理的高要求。遙測終端機一出現&#xff0c;就像給灌區流量監測安上了智能感知…

P4017 最大食物鏈計數-拓撲排序

P4017 最大食物鏈計數 題目來源-洛谷 題意 要求最長食物鏈的數量。按照題意&#xff0c;最長食物鏈就是指有向無環圖DAG中入度為&#xff10;到出度為&#xff10;的不同路徑的數量&#xff08;鏈數&#xff09; 思路 在計算時&#xff0c;明顯&#xff1a;一個被捕食者所…

Xmind快捷鍵大全

常規 插入主題和元素&#xff08;常用&#xff09; 編輯主題文本和樣式 選擇和移動 調整畫布和視圖 工具和其他

四. 以Annoy算法建樹的方式聚類清洗圖像數據集,一次建樹,無限次聚類搜索,提升聚類搜索效率。(附完整代碼)

文章內容結構&#xff1a; 一. 先介紹什么是Annoy算法。 二. 用Annoy算法建樹的完整代碼。 三. 用Annoy建樹后的樹特征匹配聚類歸類圖像。 一. 先介紹什么是Annoy算法 下面的文章鏈接將Annoy算法講解的很詳細&#xff0c;這里就不再做過多原理的分析了&#xff0c;想詳細了解…

什么是電容?

什么是電容&#xff1f; 電荷與電壓的比值就是電容量C。電容單位為法拉(F)。1法拉電容器在電壓為1V時儲存的電荷量為1庫倫(C)。圖1.1中的球體表面電壓與儲存的電荷Q關聯。電壓V等于。Q/V等于。如果球體位于電介質媒介中&#xff0c;電壓V降低倍&#xff0c;Q/V等于。在電介質媒…

Linux服務器上mysql8.0+數據庫優化

1.配置文件路徑 /etc/my.cnf # CentOS/RHEL /etc/mysql/my.cnf # Debian/Ubuntu /etc/mysql/mysql.conf.d/mysqld.cnf # Ubuntu/Debian檢查當前配置文件 sudo grep -v "^#" /etc/mysql/mysql.conf.d/mysqld.cnf | grep -v "^$&q…