本题是一次线性 模拟:只取字符串数组的前 n 个元素,把每个合法整数字符串转成数值后,按绝对值落入四个左闭右开区间,再把有符号原值累加到对应组。
分组规则:
给定一个字符串数组,每个字符串表示一个数字(可能包含正负号)。将数组中前 n 个成员按照绝对值大小分为以下几组,并计算每组数字总和:
1组:绝对值在 [0,100) 范围内的数字;2组:绝对值在 [100,1000) 范围内的数字;3组:绝对值在 [1000,10000) 范围内的数字;4组:绝对值在 [10000,+∞) 范围内的数字;注意:数字按绝对值分组,但计算总和按实际正负数计算;输入保证每个字符串都是合法的整数格式,整数范围为 −106≤数值≤106;保证参数 n 小于等于数组长度。
包含两部分的输入:第一部分为整数 n,表示数组前 n 个成员;第二部分为字符串数组,每个元素表示一个整数(可能含正负号)。
一维数组,数组成员分别表示第 1、2、3、4 组的和。
输入
5,["-50","120","2000","50000","80"]
输出
[30,120,2000,50000]
说明
1组(绝对值 0-99):−50 和 80,和为 302组(绝对值 100-999):120,和为 1203组(绝对值 1000-9999):2000,和为 20004组(绝对值 ≥10000):50000,和为 50000注意:−50 在第1组是因为其绝对值 50 在 [0,100) 范围内,而不是因为它是负数。
输入
4,["0","100","1000","10000"]
输出
[0,100,1000,10000]
说明
1组(绝对值 0-99):0,和为 02组(绝对值 100-999):100,和为 1003组(绝对值 1000-9999):1000,和为 10004组(绝对值 ≥10000):10000,和为 10000注意:边界值 100 属于第2组,1000 属于第3组,10000 属于第4组。
© CodeFun2000 · 使用条款
Scan the QR code below with WeChat to sign in
First-time scan will create your account automatically
请使用微信扫描下方二维码完成注册