传智杯Java志愿者传智专修学院总共召集了n位志愿者来负责打扫活动,现在需要你负责帮忙统计每位志愿者的工作情况,用来制作光荣榜,给他们发小花花
生活随笔
收集整理的这篇文章主要介绍了
传智杯Java志愿者传智专修学院总共召集了n位志愿者来负责打扫活动,现在需要你负责帮忙统计每位志愿者的工作情况,用来制作光荣榜,给他们发小花花
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
Java实现思路:创建一个志愿者内部类,包括编号、服务时长、难度、贡献度属性。使用ArrayList将多个志愿者对象联系在一起。使用Collection的sort方法,重写compare方法进行按规则比较。
Java代码:
import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import java.util.List; import java.util.Scanner; public class Main{static class volunteer{public int id;public int t;public int k;public int conty;public volunteer(int id,int t, int k) {this.id = id;this.t = t;this.k = k;conty = t*k;}}public static void main(String[] args) {Scanner sc = new Scanner(System.in);int n = sc.nextInt();List<volunteer> list = new ArrayList<>();for (int i = 1; i <= n; i++) {list.add(new volunteer(i,sc.nextInt(),sc.nextInt()));}Collections.sort(list, new Comparator<volunteer>() {public int compare(volunteer o1, volunteer o2) {if (o1.conty != o2.conty) {return o2.conty - o1.conty;}else if(o1.t != o2.t) {return o2.t - o1.t;}else {return o1.id - o2.id;}}});for (int i = 0; i < list.size(); i++) {System.out.print(list.get(i).id+" ");}} }总结
以上是生活随笔为你收集整理的传智杯Java志愿者传智专修学院总共召集了n位志愿者来负责打扫活动,现在需要你负责帮忙统计每位志愿者的工作情况,用来制作光荣榜,给他们发小花花的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 昆仑万维与 Meta 达成商务合作,为
- 下一篇: 传智杯Java终端有一天您厌烦了电脑上又