1740: 自动刷题机

Memory Limit:128 MB Time Limit:1.000 S
Judge Style:Text Compare Creator:
Submit:3 Solved:4

Description

自动刷题机刷题的方式非常简单:首先会瞬间得出题目的正确做法,然后开始写程序。每秒,自动刷题机的代码生成模块会有两种可能的结果:
1.写了 x 行代码
2.心情不好,删掉了之前写的 y 行代码。(如果 y 大于当前代码长度则相当于全部删除。)

对于一个 OJ,存在某个固定的正整数长度 n,一旦自动刷题机在某秒结束时积累了大于等于 n 行的代码,它就会自动提交并 AC 此题,然后新建一个文件(即弃置之前的所有代码)并开始写下一题。SHTSC 在某个 OJ 上跑了一天的自动刷题机,得到了很多条关于写代码的日志信息。他突然发现自己没有记录这个 OJ 的 n 究竟是多少。所幸他通过自己在 OJ 上的 Rank 知道了自动刷题机一共切了 k 道题,希望你计算 n 可能的最小值和最大值。

Input

第一行两个整数 l,k,表示刷题机的日志一共有 l 行,一共了AC了 k 题。
接下来 l 行,每行一个整数 xi ,依次表示每条日志。
若 xi ≥0,则表示写了xi  行代码,若 xi <0,则表示删除了 −xi  行代码。

Output

输出一行两个整数,分别表示 n 可能的最小值和最大值。
如果这样的 n 不存在,请输出一行一个整数 -1。

Sample Input Copy

4 2
2
5
-3
9

Sample Output Copy

3 7

HINT

数据规模与约定
对于 20% 的数据,保证 l≤10;
对于 40% 的数据,保证 l≤100 ;
对于 60% 的数据,保证l≤2×103 ;
对于 00% 的数据,保证1≤l≤105 ,−109 ≤xi ≤109 。

Source/Category