CGY 刚来公司不久,公司就有一个大型的差事交给 CGY:让 CGY 乘坐公司的无人汽车外出 M 国出差。CGY 通过 LXY 知道了一些情报:沿途城市中的某样宝石的交易价格不都相同。其中第 i 座城市的宝石价格为 a_i 元。CGY 每到一座城市(编号为 i)可以有以下三种操作:
由于城市对宝石的管控十分严格,所以每次最多买入或卖出一块宝石。CGY 想知道自己去 M 国的路途中最多可以赚多少钱,当然,CGY 并不想花多余的力气与商人交易,所以交易的次数也要尽可能的少。你可以假设 CGY 一开始带着无限的金钱。
输入
输入的第一行为一个数字 t \ (1 \leq t \leq 10),代表有 t 组数据。对于每一组数据:
每组数据的第一行为一个数字 n \ (1 \leq n \leq 10^5)。
每组数据的第二行为 n 个数字,空格隔开,代表沿途中第 i 个城市某样宝石的交易价格 a_i \ (1 \leq a_i \leq 10^9)。
输出
对于每一组数据,输出两个数字:CGY 能最多可以赚的钱数和在此条件下最少的交易次数。
样例
标准输入 复制文本 |
3 4 1 2 10 9 5 9 5 9 10 5 2 2 1 |
标准输出 复制文本 |
16 4 5 2 0 0 |
来源
2019 欢送 (迫害) CGY 杯程序设计竞赛