• [1757] 十四年,去年夏天,今日拾阶

  • 时间限制: 2000 ms 内存限制: 65535 K
  • 问题描述
  • 可我还是想知道,你今天究竟为什么要登山。

    如果是西陵神殿那些人或者燕国使臣来问,我肯定会回答一个把他们全部震住的答秦,但既然是您问,我当然要老实回答……要登山,自然是因为我想登山。

    真是好答案,这是我这几年来听到的最好的答秦。
    如果问话的人是西陵那些神棍或者是燕国那些墙头草,那你会怎么答。

    如果是他们质问我为什么要登山,我会说……
    因为山就在那里啊。……

    宁缺便开始登山,很快就来到了书院四先生范悦布的石子阵,也就是俗称的脚下痛。

    这石子阵可以抽象为一条有n块石子组成的山路,每块石子之间的距离为1步。
    石子阵竟恐怖如斯,一旦踩到第i块石子上,宁缺就会受到a[i]点伤害。
    不仅如此,每块石子的摆放还限制了宁缺的身法,导致宁缺的下一次移动,最多向前走b[i]步。

    一开始宁缺站在第1块石子上,他要通过石子阵就必须踩在第n块石子上,请问在这个过程中,宁缺受到的伤害最少为多少。
    (也就是说宁缺一定会受到第1块石子的伤害和最后一块石子的伤害,石子不会重复伤害宁缺)。
  • 输入
  • 第一行一个整数T,表示有T组数据,对于每组数据 
    接下来一个整数n,表示有n个石子 
    接下来一行有n个整数,表示踩在第i块石子上受到的伤害a[i] 
    接下来一行有n个整数,表示第i块石子上的移动限制b[i] 
    1<=n,a[i],b[i]<=100000 
  • 输出
  • 对于每组数据,输出一个整数,表示宁缺受到的最小伤害
  • 样例输入
  • 2
    5
    1 1 99 1 1
    1 1 2 1 1
    5
    1 2 5 4 1
    2 2 2 1 1
  • 样例输出
  • 102
    7
  • 提示
  • 如果cin超时可以使用scanf
    对于第一组样例
    一开始宁缺站在第1块石子上,受到1点伤害,然后最多向前走1步,于是踩到第2块石子上,受到1点伤害,然后最多向前走1步,于是踩到第3块石子上,受到99点伤害,然后最多向前走2步,于是踩到第5块石子上,受到1点伤害,结束。
    宁缺最少受到102点伤害。
    
    对于第二组样例
    石子的顺序依次为 1,3,5
  • 来源
  • Good Bye 8102
    by the chy 
  • 操作

显示春菜