close

% 運算子是求餘數的運算子在二維陣列的處理可以使用此技巧

首先看以下的範例

int Array[M][N];

for (int i = 0; i < M; ++i)
    for (int j = 0; j < N; ++j)
        scanf("%d", &Array[i][j]);

這是很常見的方法
但是可以用一維陣列改寫為

for (int i = 0; i < M*N; ++i)
    scanf("%d", &Array[i / M] [i % N]);

如此可以避免兩層迴圈
這個技巧一定要記住
但是必須在MN相等的狀況下才能使用

全站熱搜
創作者介紹
創作者 kgsprogrammer 的頭像
kgsprogrammer

太陽系後援會

SnakeEater 發表在 痞客邦 留言(0) 人氣()