国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

寒假15:算法訓練 接水問題

2019-11-14 12:18:34
字體:
來源:轉載
供稿:網友

算法訓練 接水問題  時間限制:1.0s   內存限制:64.0MB      錦囊1模擬即可,要加速可以使用堆優化。錦囊2本題的數據范圍比較小,可以直接按照題庫模擬,或者也可以使用堆來優化算法。問題描述  學校里有一個水房,水房里一共裝有m 個龍頭可供同學們打開水,每個龍頭每秒鐘的 供水量相等,均為1。 現在有n 名同學準備接水,他們的初始接水順序已經確定。將這些同學按接水順序從1 到n 編號,i 號同學的接水量為wi。接水開始時,1 到m 號同學各占一個水龍頭,并同時打 開水龍頭接水。當其中某名同學j 完成其接水量要求wj 后,下一名排隊等候接水的同學k 馬上接替j 同學的位置開始接水。這個換人的過程是瞬間完成的,且沒有任何水的浪費。即 j 同學第x 秒結束時完成接水,則k 同學第x+1 秒立刻開始接水。若當前接水人數n’不足m, 則只有n’個龍頭供水,其它m?n’個龍頭關閉。 現在給出n 名同學的接水量,按照上述接水規則,問所有同學都接完水需要多少秒。輸入格式  第1 行2 個整數n 和m,用一個空格隔開,分別表示接水人數和龍頭個數。 第2 行n 個整數w1、w2、……、wn,每兩個整數之間用一個空格隔開,wi 表示i 號同 學的接水量。輸出格式  輸出只有一行,1 個整數,表示接水所需的總時間。樣例輸入5 34 4 1 2 1樣例輸出4樣例輸入8 423 71 87 32 70 93 80 76樣例輸出163輸入輸出樣例 1 說明  第1 秒,3 人接水。第1 秒結束時,1、2、3 號同學每人的已接水量為1,3 號同學接完  水,4 號同學接替3 號同學開始接水。  第2 秒,3 人接水。第2 秒結束時,1、2 號同學每人的已接水量為2,4 號同學的已接  水量為1。  第3 秒,3 人接水。第3 秒結束時,1、2 號同學每人的已接水量為3,4 號同學的已接  水量為2。4 號同學接完水,5 號同學接替4 號同學開始接水。  第4 秒,3 人接水。第4 秒結束時,1、2 號同學每人的已接水量為4,5 號同學的已接  水量為1。1、2、5 號同學接完水,即所有人完成接水。  總接水時間為4 秒。數據規模和約定  1 ≤ n ≤ 10000,1 ≤m≤ 100 且m≤ n;  1 ≤ wi ≤ 100。這個題難度中等,不那么難,也不是說一下就出來的。模擬是可以解出來的,有幾個地方可以優化下。比如直接求出最小的,然后有一個接口沒人時,只用最大的放完就行了。

代碼,通過了100%的數據:

import java.util.Scanner;public class 接水問題 {	public static void main(String[] args) {				Scanner sc=new Scanner(System.in);		int n=sc.nextInt();		int m=sc.nextInt();				int[] data=new int[n];		int[] shui=new int[m];				for (int i = 0; i < data.length; i++) {			data[i]=sc.nextInt();			if(i<m)				shui[i]=data[i];		}		int count=0;		while(getBool(shui)){			int min=getMin(shui);			count+=min;			for (int i = 0; i < shui.length; i++) {				shui[i]-=min;				if(shui[i]==0&&m<data.length)					shui[i]=data[m++];			}		}		System.out.PRintln(count);	}	private static int getMin(int[] shui) {		int k=100*100;		for (int i = 0; i < shui.length; i++) {			if(k>shui[i]&&shui[i]>0)				k=shui[i];		}		return k;	}	private static boolean getBool(int[] shui) {		for (int i = 0; i < shui.length; i++) {			if(shui[i]>0)				return true;		}		return false;	}}


上一篇:P1781 宇宙總統

下一篇:xml數據二級聯動

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 平安县| 沙河市| 闵行区| 昌吉市| 临猗县| 依兰县| 天水市| 怀集县| 扬州市| 永定县| 温泉县| 安仁县| 洛宁县| 讷河市| 龙川县| 安顺市| 黔江区| 丰镇市| 云南省| 西贡区| 资中县| 海林市| 海晏县| 积石山| 宜川县| 蛟河市| 巫溪县| 托克托县| 高清| 巨鹿县| 镇安县| 濮阳市| 长阳| 焦作市| 渝中区| 陵川县| 岚皋县| 沁水县| 克拉玛依市| 遵义县| 许昌市|