#2588. 减肥计划
减肥计划
题目描述
小 H 由于最近没有管住嘴、迈开腿,体重逐渐飙升,于是他痛下决心决定减肥。
首先他根据经验,预测了下 天饮食所产生的卡路里,第 天饮食产生的卡路里为 。同时在咨询了专业的减肥小伙伴后又得到了一个合理的代餐计划,代餐计划规划好了未来 天的饮食,第 天的饮食产生的卡路里为 。
在下来的第 天,他可以在该天保持原有的饮食习惯,此时这天产生的卡路里为 ,也可以采取对应该天的代餐计划,此时这天产生的卡路里为 。
小 H 希望对最坏的情形做好打算,于是他想知道,如果这 天,恰好有 天采取代餐计划的情形下,最终产生的卡路里总和最大分别是多少?
小 H 希望这个结果保密,所以当你分别求出了这 天中恰有 天采取代餐计划后,最大可能产生的卡路里后,请你将得到的结果通过异或运算加密告诉小 H 。
输入格式
第一行一个数 ,代表天数 。
接下来一行 个数,代表小 H 预测的每天卡路里 。
接下来一行 个数,代表代餐计划产生的卡路里为 。
输出格式
输出共一行,如果这 n 天,恰好有 天采取代餐计划的情形下,最大能产生的卡路里是 ,则输出 。
其中 代表异或操作。异或操作是位运算中的“异或”,在C/C++/Java中表示为“^”。
异或,就是特殊的 “或”,在”或“的基础上改一下。0|0=0,0|1=1,1|0=1,1|1=0
,变色的就是跟 “或” 不一样的。
举例:计算"3异或5"的值,写为:3^5。
计算原理是将3和5分别转为2进制数,
运行如下代码:
cout<<(3^5);
输出 6;
原理:
0000_0011 ^ 0000_0101 = 0000_0110
即十进制的6
样例数据
4
1 1 3 4
4 4 1 1
13
样例解释1
- 如果 天采取代餐计划,那么此时可以产生的卡路里最大,是 ;
- 如果 天采取代餐计划,则在第 天执行,那么此时可以产生的卡路里最大,是 ;
- 如果 天采取代餐计划,则在第 天和第 天执行,那么此时可以产生的卡路里最大,是 ;
- 如果 天采取代餐计划,则在第 天、第 天 和第 天执行,那么此时可以产生的卡路里最大,是 ;
- 如果 天采取代餐计划,则在第 天、第 天、第 天和第 天执行,那么此时可以产生的卡路里最大,是 ; 因此,最后结果为
2
1 1
1 1
2
样例解释2
- 如果 天采取代餐计划,那么此时产生的卡路里最大为 ;
- 如果 天采取代餐计划,则在第 天执行,那么此时产生的卡路里最大,为 ;
- 如果 天采取代餐计划,则在第 天和第 天执行,那么此时产生的卡路里最大,为 因此,最后结果为
3
1 2 3
3 2 1
0
样例解释3
-
如果 天采取代餐计划,那么此时可以产生的卡路里最大,是 ;
-
如果 天采取代餐计划,则在第 天执行,那么此时可以产生的卡路里最大,是 ;
-
如果 天采取代餐计划,则在第 天和第 天执行,那么此时可以产生的卡路里最大,是 ;
-
如果 天采取代餐计划,则在第 天、第 天 和第 天执行,那么此时可以产生的卡路里最大,是 ;
因此,最后结果为
数据范围
对于数据,,
对于数据,,