#26239: 根本就不用創陣列c++解題思路


ivorchu@gmail.com (Ivor Chu)

學校 : 臺北市私立復興實驗高級中學
編號 : 129636
來源 : [124.218.229.180]
最後登入時間 :
2021-07-26 01:28:29
c356. Justin 愛加密 | From: [39.9.201.242] | 發表日期 : 2021-07-26 01:38

從文中範例可得知輸入陣列會被轉成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;

 

}

 
ZeroJudge Forum