從文中範例可得知輸入陣列會被轉成n*n的矩陣來解碼
藉此可以從矩陣中對角線座標的特性來得知密碼中每一個字元與下一個字元間隔n+1個字元
此時在code中只需要紀錄目前是在讀取第幾個字元 而不用真的把所有字元都存下來
當我們遇到密碼中的字元再輸出即可
AC解答⬇️
#include <iostream>
#include <string>
using namespace std;
int main() {
ios_base::sync_with_stdio(0);
cin.tie(0);
int n;
string str;
char a;
cin >> n;
for (int i = 0; i < n*n; i++) {
cin >> a;
if (i%(n+1)==0) cout << a;
}
cout << "\n";
return 0;
}