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