C. 旅行

内存限制:256 MiB 时间限制:1000 ms 标准输入输出
题目类型:传统 评测方式:文本比较

题目描述

有一条公路,上面依次排列着 n 个村庄 1,2,⋯n。

现在村民想要从一个村庄开始开车旅行。

人们对新的景物总是会感到好奇,所以村民第一次经过村庄i,(1≤i≤n) 时会获得 v_i 的幸福度。

太长的路途会让人觉得无聊,所以村民每一次经过村庄 i,(1≤i≤n) 上时会损失 l_i 的幸福度。

现在每个村庄的村民都想进行一次开车旅行,请问对于每个村庄 i 来说,从 i 出发开车旅行,可以在任意村庄结束旅行,能够获得的最大幸福度是多少。注意,刚开始从 i 出发时在 i 处算经过,也可以不走任何村庄直接在 i 处停止。

假如从 i 开始旅行的最优答案是 a_i ,你仅需要输出所有 (a_i+10^9) 的按位异或和。

输入格式

第一行,一个正整数 n。

第二行,n 个非负整数 v_i

第三行,n 个非负整数 l_i

输出格式

一行,1 个数,表示所有 (a_i+10^9) 的按位异或和。

样例

样例输入 #1

5
5 2 0 1 9 
1 0 9 4 0 

样例输出 #1

999999986

样例输入 #2

20
403061601 810591352 507697501 133858564 199789041 557025869 711882319 419096063 981339518 841485142 791291503 6826013 647433775 746040274 424106727 193672792 49267733 897961281 85565522 677623767 
478730989 57478801 50960041 853526974 597724824 966224864 425308897 126068196 599927460 506175250 1836895 437092799 846100975 327742642 946884910 842167722 756988466 714029261 13657019 333939215 

样例输出 #2

1154044335

样例解释1

从位置 1 出发时,最优方案是向右到第二个村庄停止,此时获得的幸福感最大,为 5−1+2−0=6;

从位置 2 出发时,最优方案是向左到第一个村庄停止,此时获得的幸福感最大,为 2−0+5−1=6;

从位置 3 出发时,最优方案是向左到第一个村庄停止或者向右到第 5 个村庄停止,此时获得的幸福感最大,为 0−9+2−0+5−1=−3 或者 0−9+1−4+9−0=−3;

从位置 4 出发时,最优方案是向右到第 5 个村庄停止,此时获得的幸福感最大,为 1−4+9−0=6 ;

从位置 5 出发时,最优方案是在第 5 个村庄停止,此时获得的幸福感最大,为 9−0=9 ;

因此,从每个位置出发旅行的最优答案分别为:6 6 -3 6 9

加上 10^9 后的异或和为 999999986。

数据范围与提示

对于100%的数据: 1≤n≤10^6,0≤v_i,l_i≤10^9