官方网站页面尺寸,网站优化的文章,hello md5 wordpress,哪些网站做的好看的图片1、题目描述
【服务器能耗统计】 服务器有三种运行状态:空载、单任务、多任务,每个时间片的能耗的分别为1、3、4; 每个任务由起始时间片和结束时间片定义运行时间; 如果一个时间片只有一个任务需要执行,则服务器处于单任务状志; 如果一个时间片有多个任务需要执行,则服务器处于…1、题目描述
【服务器能耗统计】 服务器有三种运行状态:空载、单任务、多任务,每个时间片的能耗的分别为1、3、4; 每个任务由起始时间片和结束时间片定义运行时间; 如果一个时间片只有一个任务需要执行,则服务器处于单任务状志; 如果一个时间片有多个任务需要执行,则服务器处于多任务状态; 给定一个任务列表,请计算出从第一个任务开始到所有任务结束,服务器的总能耗。
【输入描述】 第一行的数字表示一共有多少个任务 后续每行包含由空格分割的两个整数,用于确定每一个任务的起始时间片和结束时间片; 任务执行时间包含起始和结束时间片即任务执行时间是左团右闭的; 结束时间片一定大于等于起始时间片;
【输出描述】 一个整数代表服务器的总能耗
【样例1】 输入: 2 2 5 8 9 输出: 20 解释: [0,1]没有任务需要执行,能耗为0 [2,5]处于单任务状态,能耗为3412 [6,7]处于空载状态,能耗为122 [8,9]处于单任务状态,能耗为3*26 共计能耗为122620
【样例2】 输入: 3 4 8 1 6 2 9 输出: 34 解释: [0,1]没有任务需要执行,能耗为0 [1,1]处于单任务状态,能耗为313 [2,8]处于多任务状态,能耗为4728 [9,9]处于单任务状态,能耗为3*13 共计能耗为328334
2、解题思路
统计出最小和最大的运行时间并统计从0到最大运行时间之间每个时间的任务数量遍历每个任务的开始时间到结束时间并将其任务数量加一。最后遍历统计的任务数量空载消化1单任务消化3多任务消化3注意是最小开始时间到最大结束时间之间。
3、参考代码
import java.util.Scanner;/*** Author* Date 2023/5/5 22:55*/
public class 服务器能耗统计 {public static void main(String[] args) {Scanner in new Scanner(System.in);while (in.hasNext()) {int num in.nextInt();int[][] times new int[num][2];int minTime Integer.MAX_VALUE;int maxTime 0;for (int i 0; i num; i) {times[i][0] in.nextInt();times[i][1] in.nextInt();minTime Math.min(minTime, times[i][0]);maxTime Math.max(maxTime, times[i][1]);}System.out.println(total(num, times, minTime, maxTime));}}public static int total(int num, int[][] times, int minTime, int maxTime) {// 统计每个时间的任务数int[] time new int[maxTime 1];for (int i 0; i num; i) {for (int j times[i][0]; j times[i][1]; j) { // 遍历开始时间到结束时间time[j];}}int res 0;for (int i minTime; i maxTime; i) {if (time[i] 0) { // 空载res 1;} else if (time[i] 1) { // 单任务res 3;} else {res 4;}}return res;}
}
4、相似题目