一位商人经营着一家繁忙的货运公司,他的卡车司机每天都要将货物从仓库运送到客户处。为了监控司机的工作表现,商人在每辆卡车上安装了一个计数器,记录自上次运送货物以来的天数。
所以如果某一天运送货物,这一天的计数器就为 0 ,如果最近一次运送货物是 3 天前,计数器就会显示 3 。商人每天都会记录计数器的数值。现在,商人想要对司机的工作表现进行评估。
年末到了,商人准备做一些送货的统计。
但是,他发现有一些计数器记录丢失了!他确信他是开始送货的某一天开始记录的。
请帮助他确定,在所有与残留记录条目一致的事件序列中,基于记录的时间,最少和最多可能运送货物的次数。
第一行包含一个整数 N (1 \leq N \leq 100),表示商人记录计数器的天数。
第二行包含 N 个用空格分隔的整数。
第 i 个整数为 -1 表示第 i 天的记录丢失,或者是一个非负整数 a_i(最大为 100 ),表示第 i 天计数器的值为 a_i 。
如果没有任何一个与商人的部分记录相一致的事件序列,或者推导出第一天不送货(第一天确定是送货的),输出一个整数 -1 。
否则,输出两个用空格分隔的整数 m 和 M ,其中 m 是任何一致事件序列中最少的货物运送次数,M是最多的次数。
4 -1 -1 -1 1
2 3
2 1 0
-1
【样例1解释】
在这个例子中,我们可以推断出上次运送货物必须在第 3 天。知道在第 1 天运送货物之后,唯一剩下的不确定性就是第 2 天是否运送了货物。因此,总共运送货物的次数在 2 到 3 之间。
【样例2解释】
第一天确定是送货的,所以不符合记录逻辑,则输出 -1 。
东方博宜OJ