1457. CGY 出差

CGY 刚来公司不久,公司就有一个大型的差事交给 CGY:让 CGY 乘坐公司的无人汽车外出 M 国出差。CGY 通过 LXY 知道了一些情报:沿途城市中的某样宝石的交易价格不都相同。其中第 i 座城市的宝石价格为 a_i 元。CGY 每到一座城市(编号为 i)可以有以下三种操作:

  1. a_i 元买入一块宝石
  2. a_i 元卖出一块宝石
  3. Do nothing

由于城市对宝石的管控十分严格,所以每次最多买入或卖出一块宝石。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 杯程序设计竞赛

登录以提交代码。
单点时限 2 秒
内存限制 512 MB
提交 17
通过 10