020-005-002
コレクション総合:成績管理システム
上級
問題説明
コレクションの組み合わせ
この問題では: MapとTreeSetを組み合わせて名前とスコアのデータを管理し、Stream APIで集計処理を行い、結果を標準出力に表示するプログラムを作成します。
データ構造の選択
// 名前とスコアの対応にMap Map<String, Integer> scores = new HashMap<>(); // 最高点者の候補にTreeSet(自動ソート) TreeSet<String> topScorers = new TreeSet<>();
学習ポイント
- Map: キーと値の対応関係を保持
- TreeSet: 要素を自動的にソートして保持
- Stream API: 集計処理を簡潔に記述可能
- 適切なデータ構造の選択が効率的なコードにつながる
テストケース例
※ 出力例はプログラミングの国際標準に準拠し英語で表示しています
入力:
4 Alice 85 Bob 92 Charlie 78 Diana 92
期待される出力:
Average: 86 Top: Bob Above average: 2
入力:
3 Eve 100 Frank 100 Grace 100
期待される出力:
Average: 100 Top: Eve Above average: 0
入力:
5 Henry 60 Iris 70 Jack 80 Kate 90 Leo 50
期待される出力:
Average: 70 Top: Kate Above average: 2
入力:
2 Alex 50 Beth 80
期待される出力:
Average: 65 Top: Beth Above average: 1
❌ テストに失敗したケースがあります
あなたの解答
現在のモード:● 自分のコード
99
1
2
3
4
5
6
7
8
9
10
›
⌄
⌄
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
// ここにコードを書いてください
sc.close();
}
}
0 B / 5 MB
残り 9 回実行可能
