import java.util.*; public class Main { public static void main(String aegs[]) { Scanner sc = new Scanner(System.in); int n, m; int[] val = new int[1001]; while (sc.hasNext()) { n = sc.nextInt(); m = sc.nextInt(); for (int i = 0; i < n; ++i) { val[i] = sc.nextInt(); } Map<String, Integer> mp = new <String, Integer>HashMap(); String name; for (int i = 0; i < m; ++i) { name = sc.next(); int num = mp.getOrDefault(name, 0) + 1; mp.put(name, num); } Arrays.sort(val, 0, n); List<Integer> list = new ArrayList<Integer>(mp.values()); int size = list.size(); Integer[] array = (Integer[])list.toArray(new Integer[size]); Arrays.sort(array); int max = 0, min = 0; int i = 0; for (Integer num : array) { max += val[n - size + i] * num; if (size - 1 - i >= 0) { min += num * val[size - 1 - i]; } i++; } System.out.println(min + " " + max); } } } 感觉你们写的都好长。
点赞 1

相关推荐

11-23 15:33
已编辑
门头沟学院 Java
CUTMR:换账号试试重启推荐算法,我换账号之后回复率还不错,约莫有个20%左右的消息回复率,前几页、主动招呼的HR也开始符合我期望薪资,此前的大号从招呼、回复、前几页的岗位薪资在涨幅30%+以上 用着用着聊着聊着就变成-20%,而且我开通会员之后直接0面试
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务