私は一連の非負の整数を与えられました。
43 18 5 67 1 72 16 17 15 93 38 6 83 10 49 98 7 47 61 52 71 79 82 52 8
Outside-Inからm*n配列に格納する必要があります。次のように:
m = 5
n = 5
次に、2D配列の特定の部分の合計を計算する必要があります。(私はすでにこの部分を行っています)。
数字を保存するための私の理想的なアプローチ:
1. Initialize starti,startj = 0.
2. Initialize endi = m , endj = n.
3. Store the remaining numbers in array[starti][j], where j starts from startj and ends at endj.
4. Store the remaining numbers in array[i][endj], where i starts from starti and ends at endi.
5. Store the remaining numbers in array[endi][j], where j starts from endj and ends at startj.
6. Store the remaining numbers in array[i][endj], where i starts from endi and ends at starti.
7. Decrement endi and endj by 1.
8. Increment starti and start j by 1.
9. Repeat the steps 3 - 8 until the last number is stored.
質問:この問題を解決するためのより良い方法はありますか?
追加:私は思いついた(しかし失敗した)formula to find where the last element is stored before doing all these operation.