一、题目

详见代码

二、代码

import java.util.Scanner;

/**
* 3
* 1 1 5 10
* 2 3 4
* 1 4 6 -5
*/
public class main4 {
public static void main(String[] args) {
Scanner in = new Scanner(System.in); while (in.hasNext()) {
//输入行数row
int row = in.nextInt(); //输入成长值
String[] strArr = new String[row];
String a = in.nextLine();
for (int i = 0; i < strArr.length; i++) {
strArr[i] = in.nextLine();
} //test
System.out.println(strArr[0]);
System.out.println(strArr[1]);
System.out.println(strArr[2]);
// //计算成长值
int mLast = 0; //每日成长值开始时间
int nLast = 0; //每日成长值结束时间
int valueLast = 0;//每日成长值
int mNext = 0; //每日成长值开始时间
int nNext = 0; //每日成长值结束时间
int valueNext = 0;//每日成长值
int value2Sum = 0; //任务成长值累计值
int value1Sum = 0; //每日成长值累计值
int count = 0; //统计每日成长值的数据有多少条
int sum = 0; //总成长值 for (int i = 0; i < strArr.length; i++) {
String[] strArr1 = strArr[i].split(" "); //test
for (int j = 0; j < strArr1.length; j++) {
System.out.println(strArr1[j]);
}
// if (Integer.parseInt(strArr1[0]) == 2) {
value2Sum = value2Sum + Integer.parseInt(strArr1[2]);
} if (count != 0) {
if (Integer.parseInt(strArr1[0]) == 1) {
mNext = Integer.parseInt(strArr1[1]);
nNext = Integer.parseInt(strArr1[2]);
valueNext = Integer.parseInt(strArr1[3]);
value1Sum = value1Sum + valueNext * (nNext - mNext + 1);
if (valueNext >= valueLast && nLast >= mNext) {
value1Sum = value1Sum - (Math.abs(nLast - mNext) + 1) * valueLast;
}
if (valueNext < valueLast && nLast >= mNext) {
value1Sum = value1Sum - (Math.abs(nLast - mNext) + 1) * valueNext;
}
valueLast = valueNext;
nLast = nNext;
count++;
} } if (count == 0) {
if (Integer.parseInt(strArr1[0]) == 1) {
mLast = Integer.parseInt(strArr1[1]);
nLast = Integer.parseInt(strArr1[2]);
valueLast = Integer.parseInt(strArr1[3]);
value1Sum = valueLast * (nLast - mLast + 1);
}
count++;
}
} sum = value1Sum + value2Sum;
System.out.println(sum); }
in.close();
}
}

-------------------------------------------

答案仅供参考

SH2018笔试题之成长值问题的更多相关文章

  1. Java笔试题:给定一个ReadOnlyClass的对象roc,能否把这个对象的age值改成30?

    在Java笔试面试中,经常会遇到代码题,今天我们就来看一则Java代码笔试题. 有如下代码: Class ReadOnlyClass { private Integer age=20; public ...

  2. 一道笔试题来理顺Java中的值传递和引用传递

      题目如下: private static void change(StringBuffer str11, StringBuffer str12) { str12 = str11; str11 = ...

  3. C/C++ 笔试题

    /////转自http://blog.csdn.net/suxinpingtao51/article/details/8015147#userconsent# 微软亚洲技术中心的面试题!!! 1.进程 ...

  4. C/C++笔试题(很多)

    微软亚洲技术中心的面试题!!! .进程和线程的差别. 线程是指进程内的一个执行单元,也是进程内的可调度实体. 与进程的区别: (1)调度:线程作为调度和分配的基本单位,进程作为拥有资源的基本单位 (2 ...

  5. 【转】C++笔试题汇总

    原文:http://www.cnblogs.com/ifaithu/articles/2657663.html C#C++C多线程面试1.static有什么用途?(请至少说明两种)1)在函数体,一个被 ...

  6. 从阿里巴巴笔试题看Java加载顺序

    一.阿里巴巴笔试题: public class T implements Cloneable { public static int k = 0; public static T t1 = new T ...

  7. 我设计的ASP.NET笔试题,你会多少呢

    本笔试题考查范围包括面向对象基础.HTML.CSS.JS.EF.jQuery.SQL.编码思想.算法等范围. 第1题:接口和抽象类有何区别? 第2题:静态方法和实例方法有何区别? 第3题:什么是多态? ...

  8. C#经典笔试题-获取字符串中相同的字符以及其个数

    public Dictionary<char,int> GetStrSameAs(string str){ //将字符串转换成一个字符数组. char[] charArray=str.To ...

  9. 也许你需要点实用的-Web前端笔试题

    之前发的一篇博客里没有附上答案,现在有空整理了下发出来,希望能帮助到正在找工作的你,还是那句话:技术只有自己真正理解了才是自己的东西,共勉. Web前端笔试题 Html+css 1.对WEB标准以及w ...

随机推荐

  1. POSIX Timer

    SYNOPSIS #include <signal.h> /* only timer_create need this header */ #include <time.h> ...

  2. html_jQuery

    jQuery:对Dom和js的封装模块 jQuery 低版本(1.x)兼容IE,jquery下载:http://jquery.com/download/ 若不考虑兼容ie,可下载最新版 我用的jQue ...

  3. Codeforces 279D The Minimum Number of Variables 状压dp

    The Minimum Number of Variables 我们定义dp[ i ][ mask ]表示是否存在 处理完前 i 个a, b中存者 a存在的状态是mask 的情况. 然后用sosdp处 ...

  4. python tesserocr ImportError: dll loading failed 一个不常遇见的错误,以及简单的python安装方法~

    废话不多说了,这是写给小白的了. 本人有c#,c/c++开发经验,最近因为偶然的原因,开始接触python,遇到一个棘手的问题,一位朋友在安装tesserocr 包后遇到一个错误,重新安装数次不能解决 ...

  5. 【java】-- 线程池原理分析

    1.为什么要学习使用多线程? 多线程的异步执行方式,虽然能够最大限度发挥多核计算机的计算能力,但是如果不加控制,反而会对系统造成负担. 线程本身也要占用内存空间,大量的线程会占用内存资源并且可能会导致 ...

  6. DCDC设计指南1

    DC/DC电源设计指导:一 在设计电源模块的时候,第一时间要把该电源IC的datasheet资料下载好,查看里面的说明: 下面以一款DC/DC转换IC为例: 开始布局前先看下IC的特性说明,图1: 图 ...

  7. 简单的dfs题 --- POJ1321 棋盘问题

    题目链接: http://poj.org/problem?id=1321 题目大意: 你有k个棋子,若干个可以填的位置,要求填下一个棋子后其行和列不能填棋子. 思路: dfs策略 画图理解更好些: 填 ...

  8. APM(pixhawk)飞控疑难杂症解决方法汇总(持续更新)

    本文转自下面博主 https://blog.csdn.net/junzixing/article/details/79310159 APM/Pixhawk常用链接汇总(持续更新) https://bl ...

  9. js活jQuery实现动态添加、移除css/js文件

    下面是在项目中用到的,直接封装好的函数,拿去在js中直接调用就可以实现css.js文件的动态引入与删除.代码如下 动态加载,移除,替换css/js文件 // 动态添加css文件 function ad ...

  10. 关于Promise层层嵌套可读性差问题

    Promise 是异步编程的一种解决方案,比传统的解决方案——回调函数和事件——更合理和更强大.它由社区最早提出和实现,ES6 将其写进了语言标准,统一了用法,原生提供了Promise对象 ES6 规 ...