演算法訓練 刪除陣列零元素分析:本題規定了子函式的返回值,函式名,引數以及具體操作,剩下的就是我們去定義這個函式並且寫操作的具體**了。時間限制:1.0s 記憶體限制:512.0mb
從鍵盤讀入n個整數放入陣列中,編寫函式compactintegers,刪除陣列中所有值為0的元素,其後元素向陣列首端移動。注意,compactintegers函式需要接受陣列及其元素個數作為引數,函式返回值應為刪除操作執行後陣列的新元素個數。輸出刪除後陣列中元素的個數並依次輸出陣列元素。
樣例輸入: (輸入格式說明:5為輸入資料的個數,3 4 0 0 2 是以空格隔開的5個整數)
53 4 0 0 2
樣例輸出:(輸出格式說明:3為非零資料的個數,3 4 2 是以空格隔開的3個非零整數)
33 4 2
樣例輸入:
70 0 7 0 0 9 0
樣例輸出:
27 9
樣例輸入:
30 0 0
樣例輸出:
0
要求刪除陣列中0元素,其後元素向陣列首端移動,這個很簡單。
值得注意的是,下一次判斷的時候,陣列長度要減一,迴圈索引i
ii也要減一。
因為0元素的下乙個元素前移了,如果i
ii
#include using namespace std;
int compactintegers(int *num, int n)
n--, i--;
} }return n;
}int main()
n = compactintegers(num, n);
cout << n << endl;
for(i = 0; i < n; i++)
return 0;
}
藍橋 ALGO 79 刪除陣列零元素
資源限制 時間限制 1.0s 記憶體限制 512.0mb 從鍵盤讀入n個整數放入陣列中,編寫函式compactintegers,刪除陣列中所有值為0的元素,其後元素向陣列首端移動。注意,compactintegers函式需要接受陣列及其元素個數作為引數,函式返回值應為刪除操作執行後陣列的新元素個數。...
藍橋杯 演算法訓練 ALGO12
問題描述 如果乙個序列滿足下面的性質,我們就將它稱為擺動序列 1.序列中的所有數都是不大於k的正整數 2.序列中至少有兩個數。3.序列中的數兩兩不相等 4.如果第i 1個數比第i 2個數大,則第i個數比第i 2個數小 如果第i 1個數比第i 2個數小,則第i個數比第i 2個數大。比如,當k 3時,有...
藍橋杯 演算法訓練 ALGO 57 刪除多餘括號
演算法訓練 刪除多餘括號 時間限制 1.0s 記憶體限制 512.0mb 問題描述 從鍵盤輸入乙個含有括號的四則運算表示式,要求去掉可能含有的多餘的括號,結果要保持原表示式中變數和運算子的相對位置不變,且與原表示式等價,不要求化簡。另外不考慮 用作正負號的情況,即輸入表示式不會出現 a 或 a 的情...