質問編集履歴

2

文法修正

2020/06/03 00:54

投稿

junnnnchan
junnnnchan

スコア26

test CHANGED
File without changes
test CHANGED
@@ -158,11 +158,11 @@
158
158
 
159
159
  Country c = countries[i];
160
160
 
161
- if ( ( ( c.gold == countries[j].gold ) && ( c.silver > countries[j].silver ) ) ||
162
-
163
- ( ( c.gold == countries[j].gold ) && ( c.silver == countries[j].silver ) && ( c.bronze > countries[j].bronze ) ) ||
164
-
165
- ( ( c.gold == countries[j].gold ) && ( c.silver == countries[j].silver ) && ( c.bronze == countries[j].bronze ) && ( c.name.compareTo(countries[j].name ) ) < 0 ) ) { //compareTo => 左 - 右
161
+ if (( ( (c.gold > countries[j].gold ) ||( c.gold == countries[j].gold && c.silver > countries[j].silver )||
162
+
163
+ ( c.gold == countries[j].gold && c.silver == countries[j].silver && c.bronze > countries[j].bronze ) ||
164
+
165
+ ( c.gold == countries[j].gold && c.silver == countries[j].silver && c.bronze == countries[j].bronze && c.name.compareTo(countries[j].name ) < 0 ) ))) { //compareTo => 左 - 右
166
166
 
167
167
  return true;
168
168
 

1

詳細

2020/06/03 00:54

投稿

junnnnchan
junnnnchan

スコア26

test CHANGED
File without changes
test CHANGED
@@ -389,3 +389,9 @@
389
389
  エラーは出ないのですが、プログラムで行いたい、メダル数順に並び替えるという動作が行われません。
390
390
 
391
391
  自分ではどこが間違えているのかわからないので、有識者様、修正、アドバイス、よろしくお願いします。
392
+
393
+ やりたいこと
394
+
395
+ Aの金メダル数がBの金メダル数より多いならばAが上位、その逆ならばBが上位と判定、という感じです
396
+
397
+ compare_Medalがtrueを返したらAが上位、falseを返したらBが上位になるといった感じでかんがえました。