跳方格

题目背景

在森林中欢乐的下午,乐柠兔 正在玩一款新型的小游戏——跳方格

在一条长长的跑道上,依次摆放着 nn 个位置(编号为 1,2,3,,n1, 2, 3, \dots, n)。

每个位置上都有一个或两个可以落脚的方格。

每个方格上都写着一个正整数分数,表示跳到该方格后乐柠兔能获得的分值。

不过有些位置比较狭窄,只能放下一个方格。

而乐柠兔每次必须从第一个位置出发,依次跳到下一个位置,直到跳到第 nn 个位置为止。

当某个位置上有两个方格时,她可以自由选择跳到其中任意一个。

她希望知道:在这一路的跳跃过程中,自己能获得的 最高得分最低得分 分别是多少?


题目描述

给定两个数组:

  • 数组 aa:表示每个位置第一个方格的得分;

  • 数组 bb:表示每个位置第二个方格的得分。

    若某个位置只有一个方格,则该位置在数组 bb 中对应值为 1-1

起始时,乐柠兔站在位置 11 的方格上(该位置保证只有一个方格)。

从位置 11 开始,必须按顺序跳到位置 2,3,,n2, 3, \dots, n,在每个位置上任选一个存在的方格,最终到达第 nn 个位置。

请计算:

  • 乐柠兔能获得的 最高总得分
  • 乐柠兔能获得的 最低总得分

输入格式

第一行:一个整数 nn,表示位置数量。

第二行:nn 个整数,表示数组 aa

第三行:nn 个整数,表示数组 bb


输出格式

输出两个整数,分别表示:

  • 乐柠兔能获得的 最高得分
  • 乐柠兔能获得的 最低得分。两个数之间用一个空格隔开。

输入样例

3
1 2 3
-1 3 1

输出样例

7 4

样例说明

共有三个位置:

位置 第一个方格 a[i] 第二个方格 b[i]
1 无(-1)
2 3
3 1
  • 若乐柠兔在第 2 个位置选第二个方格(得 3 分),在第 3 个位置选第一个方格(得 3 分),总分为 (1 + 3 + 3 = 7),为最高得分;
  • 若她在第 2 个位置选第一个方格(得 2 分),在第 3 个位置选第二个方格(得 1 分),总分为 (1 + 2 + 1 = 4),为最低得分。

数据范围与约定

  • 1n1000001 \le n \le 100000
  • 1ai10000001 \le a_i \le 1000000
  • bi=1b_i = -1,表示该位置只有一个方格;否则 1bi10000001 \le b_i \le 1000000
  • 输入数据均为整数

相关

在下列比赛中:

「果壳杯」 ROUND 28 (Div. 5)