iop


私信TA

用户名:uq_96393607689

访问量:3408

签 名:

等  级
排  名 2573
经  验 2151
参赛次数 0
文章发表 13
年  龄 0
在职情况 学生
学  校
专  业

  自我简介:

解题思路:

注意事项:

参考代码:

import java.util.Arrays;
import java.util.Scanner;
public class Main {
	public static void main(String[] args) {
		Scanner sc=new Scanner(System.in);
		int n=sc.nextInt(),m=sc.nextInt(),len=n+m+1;;
		int[] a=new int[len];
		long ans=0;
		for(int i=0;i<len;i++){
			a[i]=sc.nextInt();
			ans+=a[i];
		}
		Arrays.sort(a);
		if(m==0){         //只有+号的时候
			System.out.println(ans);
			return;
		}else{
			if(a[0]>=0){ //全是正数    其他数之和减去最小数       
				ans=a[len-1];
				for(int i=len-2;i>0;i--){
					ans+=a[i];
				}
				ans-=a[0];
			}else if(a[len-1]<=0){     //全负数  最大数不加绝对值 其他数全绝对值 相加
				ans=a[len-1];
				for(int i=0;i<len-1;i++){
					ans+=Math.abs(a[i]);
				}
			}else{     //有正有负 全部加上绝对值 
				ans=0;
				for(int i=0;i<len;i++){
					ans+=Math.abs(a[i]);
				}
			}
		}
		System.out.println(ans);
	}
}


 

0.0分

0 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换万能编程问答  

代码解释器

代码纠错

SQL生成与解释

  评论区