日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

寻找发帖水王java_SWUST_OJ 水王发帖排序

發布時間:2023/12/16 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 寻找发帖水王java_SWUST_OJ 水王发帖排序 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Description

眾所周知,現在各大論壇有很多水王,他們的發貼數是如此之多,以至于必須要用高精度數才能保存。現在ACMForum決定舉行一次水王爭霸賽,比賽的規則是將這些水王截止到2007年4月28日23時59分59秒這一刻所發的總貼數從大到小進行排序。每個水王當然都想取得盡量靠前的名次,所以他們竭盡全力,不擇手段地進行灌水。終于,激動人心的一刻到來了,2007年4月29日0時0分0秒,你作為裁判得到了每個水王的發貼數,現在,你的任務是公正地把這些水王按照發貼數從大到小進行排序。

Input

輸入的第一行是一個1到1000的整數N,表示總共有N位水王參加了爭霸賽。

Output

以下依次給出每位水王的描述,一位水王的描述占據一行,前面為一個僅由字母和數字組成的長度不超過20的字符串,代表這個水王的ID,后面為一個整數(非負數),代表這個水王的發貼數,注意,這個整數小于2,000,000,000。依次輸出按照發貼數從小到大排好序的各位水王的ID和這個水王的發貼數,ID和發貼數用空格分開。不能有任何多余的字符。若幾個ID的發貼數相同,則按照ID輸入的先后順序進行排列。

Sample

InputRaw

6

Lowai?1986

Zhouyuan?2987

Maolaoda?2345

BuTaoCaiGuai 2548

ArthurKing 2003

Hyyylr 3185

Sample

OutputRaw

Lowai 1986

ArthurKing 2003

Maolaoda 2345

BuTaoCaiGuai 2548

Zhouyuan 2987

Hyyylr 3185

解題思路很簡單,一個結構體或者類其包含姓名和發帖量兩個變量,然后建個數組并按發帖量排序輸出即可。

Java中的ArrayList需要通過collections類的sort方法來進行排序,當ArrayList的類型是Comparable接口的子類,如String和Integer時可以直接Collections.sort(lists)排序,此時是升序排序。自定義排序可以在類內實現Comparable接口也可以重載Collections.sort函數。重載函數自定義排序方式則需要有類來實現Comparator接口并重寫compare方法,調用sort方法時將ArrayList對象與實現Commparator接口的類的對象作為參數。

import java.util.ArrayList;

import java.util.Collections;

import java.util.Comparator;

import java.util.Scanner;

public class Main {

public static void main(String[] args) {

ArrayList list=new ArrayList();

Scanner in=new Scanner(System.in);

int k=in.nextInt();

for(int i=0;i

list.add(new ShuiWang(in.next(),in.nextBigInteger()));

}

Collections.sort(list, new SortByNum());

for(int j=0;j

list.get(j).sysMy();

}

}

}

class SortByNum implements Comparator{

@Override

public int compare(Object o1, Object o2) {

// TODO Auto-generated method stub

ShuiWang s1=(ShuiWang)o1;

ShuiWang s2=(ShuiWang)o2;

return s1.getNum().compareTo(s2.getNum());

}

}

import java.math.BigInteger;

public class ShuiWang {

private String name;

private BigInteger num;

public ShuiWang(String name, BigInteger num) {

super();

this.name = name;

this.num = num;

}

public String getName() {

return name;

}

public BigInteger getNum() {

return num;

}

public void sysMy() {

System.out.println(this.name+" "+this.num);

}

}

總結

以上是生活随笔為你收集整理的寻找发帖水王java_SWUST_OJ 水王发帖排序的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。