No.14 次の規則に従って配列の要素A[0],A[1],…,(***)に正の整数kを格納する。
kとして16,43,73,24,85を順に格納したとき,85が格納される場所はどこか。
ここで,x mod yはxをyで割った剰余を返す。
また,配列の要素は全て0に初期化されている。
〔規則〕A[k mod10]=0ならば,kをA[k mod 10]に格納する。
(1)で格納できないとき,A[(k+1) mod 10]=0ならば,kをA[(k+1) mod 10]に格納する。
(2)で格納できないとき,A[(k+4) mod 10]=0ならば,kをA[(k+4) mod 10]に格納する。
kとして16,43,73,24,85を順に格納したとき,85が格納される場所はどこか。
ここで,x mod yはxをyで割った剰余を返す。
また,配列の要素は全て0に初期化されている。
〔規則〕A[k mod10]=0ならば,kをA[k mod 10]に格納する。
(1)で格納できないとき,A[(k+1) mod 10]=0ならば,kをA[(k+1) mod 10]に格納する。
(2)で格納できないとき,A[(k+4) mod 10]=0ならば,kをA[(k+4) mod 10]に格納する。
⭕️
❌
💾
🖊 | ☑️ |
⭕️ | [[ AnswerCalc[0] ]] % | A | [[ AnswerCalc[1] ]] |
整数が配列に格納されていく流れを1つずつ順番に考えてみましょう。
[16の格納]
[16の格納]
- 16 mod 10=6、A[6]=0なので16をA[6]に格納します。
- (1)43 mod 10=3、A[3]=0なので43をA[3]に格納します。
- 73 mod 10=3、A[3]には43が入っているので格納できません。
- (73+1) mod 10=4、A[4]=0なので73をA[4]に格納します。
- 24 mod 10=4、A[4]には73が入っているので格納できません。
- (24+1) mod 10=5、A[5]=0なので24をA[5]に格納します。
- 85 mod 10=5、A[5]には24が入っているので格納できません。
- (85+1) mod 10=6、A[6]には16が入っているので格納できません。
- (85+4) mod 10=9、A[9]=0なので85をA[9]に格納します。
💾
✔️
[[ d.CommentTxt ]] |
< | > |
🥇 |