开发工具:
文件大小: 34kb
下载次数: 0
上传时间: 2010-08-23
详细说明: 百度笔试题之数组差值(题目与源码) ********************************* 给定一个长度为n并且只含有非负整数的数组A,显然这个数组一共有n*(n+1)/2个区间(每个区间至少有一个元素)。给定m个查询值K,对于每个查询值K,我们将每个区间最小值与K做“差值”,“差值”的定义如下: 当最小值MINi不小于K时,则“差值”为MINi – K 否则“差值”为0 你的任务是求出对于每个查询值K时,n*(n+1)/2个“差值”的和。 【数据范围】 1 ≤ n, m ≤ 105 0 ≤ Ai, K < 231 输入数据格式 输入文件的第一行为数组大小n,接下来第二行会有n个整数(用空格隔开) 输入文件的第三行为查询次数m,接下来会有m行,每行均为一个查询值K 输出数据格式 对于每个查询,请在一行中输出对这个查询值K,所有n*(n+1)/2个差值的和。 样例 输入: 4 1 3 2 5 2 2 3 输出: 4 2 【样例解释】 数组1 3 2 5的区间有10个,分别为: [1], [2], [3], [5], [1 3], [3 2], [2 5], [1 3 2], [3 2 5], [1 3 2 5] 这10个区间的最小值分别为: [1], [2], [3], [5], [1], [2], [2], [1], [2], [1] 则当K = 2时,所求为0+0+1+3+0+0+0+0+0+0 = 4 当K = 3时,所求为0+0+0+2+0+0+0+0+0+0 = 2 ...展开收缩
(系统自动生成,下载前可以参看下载内容)
下载文件列表
相关说明
- 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
- 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度。
- 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
- 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
- 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
- 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.