DecreasingScoresRanks
This commit is contained in:
parent
a3dd8f3ddc
commit
0e13691185
3
DecreasingScores/.idea/.gitignore
vendored
Normal file
3
DecreasingScores/.idea/.gitignore
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
# Default ignored files
|
||||
/shelf/
|
||||
/workspace.xml
|
||||
6
DecreasingScores/.idea/misc.xml
Normal file
6
DecreasingScores/.idea/misc.xml
Normal file
@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_23" default="true" project-jdk-name="openjdk-23" project-jdk-type="JavaSDK">
|
||||
<output url="file://$PROJECT_DIR$/out" />
|
||||
</component>
|
||||
</project>
|
||||
8
DecreasingScores/.idea/modules.xml
Normal file
8
DecreasingScores/.idea/modules.xml
Normal file
@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ProjectModuleManager">
|
||||
<modules>
|
||||
<module fileurl="file://$PROJECT_DIR$/DecreasingScores.iml" filepath="$PROJECT_DIR$/DecreasingScores.iml" />
|
||||
</modules>
|
||||
</component>
|
||||
</project>
|
||||
6
DecreasingScores/.idea/vcs.xml
Normal file
6
DecreasingScores/.idea/vcs.xml
Normal file
@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="VcsDirectoryMappings">
|
||||
<mapping directory="$PROJECT_DIR$/.." vcs="Git" />
|
||||
</component>
|
||||
</project>
|
||||
BIN
DecreasingScores/Checker.class
Normal file
BIN
DecreasingScores/Checker.class
Normal file
Binary file not shown.
BIN
DecreasingScores/DecreasingScore.class
Normal file
BIN
DecreasingScores/DecreasingScore.class
Normal file
Binary file not shown.
101
DecreasingScores/DecreasingScore.java
Normal file
101
DecreasingScores/DecreasingScore.java
Normal file
@ -0,0 +1,101 @@
|
||||
|
||||
/* DecreasingScore
|
||||
|
||||
* Comparators are used to compare two objects. In this challenge, you'll create
|
||||
* a comparator and use it to sort an array.
|
||||
*
|
||||
* The Player class is provided for you in your editor. It has
|
||||
* fields: a String and a
|
||||
*
|
||||
* integer.
|
||||
*
|
||||
* Given an array of
|
||||
* Player objects, write a comparator that sorts them in order of decreasing
|
||||
* score; if
|
||||
*
|
||||
* or more players have the same score, sort those players alphabetically by
|
||||
* name. To do this, you must create a Checker class that implements the
|
||||
* Comparator interface, then write an int compare(Player a, Player b) method
|
||||
* implementing the Comparator.compare(T o1, T o2) method.
|
||||
*
|
||||
* Input Format
|
||||
*
|
||||
* Input from stdin is handled by the locked stub code in the Solution class.
|
||||
*
|
||||
* The first line contains an integer,
|
||||
* , denoting the number of players.
|
||||
* Each of the subsequent lines contains a player's and
|
||||
*
|
||||
* , respectively.
|
||||
*
|
||||
* Constraints
|
||||
*
|
||||
* players can have the same name.
|
||||
* Player names consist of lowercase English letters.
|
||||
*
|
||||
* Output Format
|
||||
*
|
||||
* You are not responsible for printing any output to stdout. The locked stub
|
||||
* code in Solution will create a Checker object, use it to sort the Player
|
||||
* array, and print each sorted element.
|
||||
*
|
||||
* Sample Input
|
||||
*
|
||||
* 5
|
||||
* amy 100
|
||||
* david 100
|
||||
* heraldo 50
|
||||
* aakansha 75
|
||||
* aleksa 150
|
||||
*
|
||||
* Sample Output
|
||||
*
|
||||
* aleksa 150
|
||||
* amy 100
|
||||
* david 100
|
||||
* aakansha 75
|
||||
* heraldo 50
|
||||
*/
|
||||
import java.util.*;
|
||||
|
||||
// Write your Checker class here
|
||||
class Checker implements Comparator<Player> {
|
||||
|
||||
@Override
|
||||
public int compare(Player p1, Player p2) {
|
||||
if (p1.score == p2.score) {
|
||||
return p1.name.compareTo(p2.name);
|
||||
}
|
||||
return p2.score - p1.score;
|
||||
}
|
||||
}
|
||||
|
||||
class Player {
|
||||
String name;
|
||||
int score;
|
||||
|
||||
Player(String name, int score) {
|
||||
this.name = name;
|
||||
this.score = score;
|
||||
}
|
||||
}
|
||||
|
||||
public class DecreasingScore {
|
||||
public static void main(String[] args) {
|
||||
Scanner scan = new Scanner(System.in);
|
||||
int n = scan.nextInt();
|
||||
|
||||
Player[] player = new Player[n];
|
||||
Checker checker = new Checker();
|
||||
|
||||
for (int i = 0; i < n; i++) {
|
||||
player[i] = new Player(scan.next(), scan.nextInt());
|
||||
}
|
||||
scan.close();
|
||||
|
||||
Arrays.sort(player, checker);
|
||||
for (int i = 0; i < player.length; i++) {
|
||||
System.out.printf("%s %s\n", player[i].name, player[i].score);
|
||||
}
|
||||
}
|
||||
}
|
||||
11
DecreasingScores/DecreasingScores.iml
Normal file
11
DecreasingScores/DecreasingScores.iml
Normal file
@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="JAVA_MODULE" version="4">
|
||||
<component name="NewModuleRootManager" inherit-compiler-output="true">
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<sourceFolder url="file://$MODULE_DIR$" isTestSource="false" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
</component>
|
||||
</module>
|
||||
BIN
DecreasingScores/Player.class
Normal file
BIN
DecreasingScores/Player.class
Normal file
Binary file not shown.
Loading…
Reference in New Issue
Block a user