在做題時常發現題目要求要開很大的陣列(多則百萬甚至上億)
此時,開long long 型的陣列已經不管用了(不僅執行時間會卡爆,且本身不支援開這麼大的陣列)
此時可以想到用vector來等效替代這麼大的陣列,vectorq,q.max_size()可知向量裡可以容納1073741823個資料(親測開一億沒有問題,就是程式執行有點慢)
有時候也會遇到要開非常大(如數百萬,正常開肯定不行)的二維陣列問題,此時也可以通過在容器裡放容器來解決(vectorq),即容器巢狀。
int p=1;
vectorint>>b;
p=1;for
(int i=
1;i<=
10000
;i++
)
遍歷巢狀容器仍然使用迭代器
vectorint>>
::iterator f;
f=b.
begin()
;for
(f;f!=b.
end(
);f++
)
犯得很大的問題
錯誤 在請求是報錯bitsum在請求提交按鈕時 將按鈕誤用成submit 導致資料提交後就重新整理介面 資料還沒有被讀取到 就結束了api訪問導致的bug 報錯http請求顯示為cancel 完善後的關於讀取jd資料的service層 public list sreachpag string key...
如何求m的n次方(結果很大)
如何求出2的1024次方的準確值?可以將大數乘法進行迭代,結果儲存在陣列中。但是這樣速度極慢,這裡給出一種方法,但仍舊比python直譯器慢一些,可以繼續優化。如果將大數乘法進行迭代,那麼每次運算如果一位出現數值大於9,都需要進製,這是不必要的。源 include include include i...
如何計算c 中開陣列中佔的記憶體
引入 在比賽中一般都會有陣列的身影,但是比賽時記憶體是一定的,若是操作不當,那麼正解也會被陣列而拖累,可是如何確保自己的陣列佔的記憶體的呢?首先要知道你自己開陣列是的型別是不一樣的記憶體的 也就是說型別不一樣,記憶體計算的方法就不一樣 16位編譯器 char 1個位元組 char 即指標變數 2個位...