回答編集履歴

1

修正

2020/04/12 03:55

投稿

swordone
swordone

スコア20669

test CHANGED
@@ -2,9 +2,17 @@
2
2
 
3
3
  最初の素数は2なので、2が配列の0番目に入り、この時jが1となります。
4
4
 
5
- もしここで終わった場合、sosuMaxが1となるので、出力の段階で配列の0番目と1番目を出力してしまいます。
5
+ もしここで終わった場合、sosuMaxが1となるので、ソートで配列の0番目と1番目をソートしてしまいます。
6
6
 
7
- 1番目は初期化した時点から何も変化していないため0であるため、0が出力されます。
7
+ 1番目は初期化した時点から何も変化していないため0であるため、0が先頭(0番目)に、2が1番目に並びます。
8
+
9
+ そして出力時も0番目と1番目が出力されるため、0と2が出力される結果となります。
10
+
11
+
12
+
13
+ そもそも配列に収めている時点で小さいほうから順に収めているため、ソートの必要性がないです。
14
+
15
+ 根本的な問題として、エラトステネスの篩などを使ったほうがいいというのもあります。
8
16
 
9
17
 
10
18