回答編集履歴
2
文章の修正
test
CHANGED
@@ -288,7 +288,7 @@
|
|
288
288
|
|
289
289
|
public static int[][] convertIndexesStr(String[] indexesStr) {
|
290
290
|
|
291
|
-
//
|
291
|
+
// 会社名とランクをIndexに置き換え、会社が複数ある場合まとめる
|
292
292
|
|
293
293
|
int[][] indexes = new int[indexesStr.length][2];
|
294
294
|
|
1
文章の修正
test
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
質問例の組み合わせ数が変わるパターンだとその都度似た処理をコピー
|
1
|
+
質問例の組み合わせ数が変わるパターンだとその都度似た処理をコピーしなければならず効率が悪いので、一覧を作る部分から作り直しました。
|
2
2
|
|
3
3
|
ただビット演算を使う方が楽なためint配列をString文字列に置き換えて処理しています。
|
4
4
|
|
@@ -6,11 +6,13 @@
|
|
6
6
|
|
7
7
|
|
8
8
|
|
9
|
-
支配関係の除外
|
9
|
+
支配関係の除外は現在の処理の場合、
|
10
|
-
|
10
|
+
|
11
|
-
高ランクから順番に
|
11
|
+
高ランクから順番にしているため、必然的に下位ランクが後になるので、
|
12
|
-
|
12
|
+
|
13
|
-
新しく追加する物が既に一覧にある物の下位になるかどうかをチェックして
|
13
|
+
新しく追加する物が既に一覧にある物の下位になるかどうかをチェックして
|
14
|
+
|
15
|
+
一覧に加えない方式で処理しています。
|
14
16
|
|
15
17
|
|
16
18
|
|