贪心
很容易想到 两个数的和一定是大于等于他们两个的按位或的
最好的情况就是等于 所以我们只需要把每个数作为一段即可
结果就是所有数之和
import java.math.*;
import java.util.*;
public class Main {
public static int a[];
public static long sum[];
public static void main(String args[])
{
Scanner input = new Scanner(System.in);
int n = input.nextInt();
a = new int[n+1];
long ans=0;
for(int i=1;i<=n;i++)
{
ans+= input.nextInt();
}
System.out.println(ans);
}
} 
京公网安备 11010502036488号