每日演算法 day 38

2022-02-13 22:38:41 字數 1631 閱讀 2279

那些你早出晚歸付出的刻苦努力,你不想訓練,當你覺的太累了但還是要咬牙堅持的時候,那就是在追逐夢想,不要在意終點有什麼,要享受路途的過程,或許你不能成就夢想,但一定會有更偉大的事情隨之而來。 mamba out~

2020.3.24

如果 k < n , 那麼就要思考怎樣去選擇了:

1.k 如果是偶數的話,選出來的結果一定是非負數 , 原因如下:

(1) # 負數的個數是偶數個的話,負負得正,那麼一定是非負數

(2) # 負數的個數如果是奇數個的話,那麼我們就只選偶數個絕對值最大的負數

2.k 如果是奇數個的話,

(1)# 所有的數字如果都是負數,那麼選出來的結果也一定都是負數

(2)# 否則的話,則一定至少有 1個非負數, 那麼我們將最大的數取出來, 此時要選的個數就是 k--

#include #include #include #include using namespace std;

typedef long long ll;

const int n = 100005;

const int mod = 1000000009;

int a[n];

int n , k;

ll f(ll a,ll b)

int main()

sort(a , a + n);

int ans = 1;

int l = 0,r = n - 1;

int sign = 1;

if(k % 2)

while(k)

else

k -= 2;

} cout << ans << endl;

return 0;

}

區間修改和單點查詢的樹狀陣列,最後在求每個點的值的時候,如果該點的字首和為奇數差分字首和實際上儲存的是每個位置的修改次數如果是奇數次那麼結果肯定為1,否則為0

#include #include #include #include #define lowbit(x) (x & -x)

using namespace std;

typedef long long ll;

const int n = 500005;

int tr[n], n , m;

void add(int x,int v)

ll query(int x)

int main()

else

} return 0;

}

#include #include #include #include #define lowbit(x) (x & -x)

using namespace std;

typedef long long ll;

const int n = 500005;

ll a[n] , tr[n], n , m;

void add(int x,int v)

ll query(int x)

int main()

for(int i = 0;i < m;i ++)

else

} return 0;

}

day38 併發程式設計 理論

目錄 三 程序理論 四 開啟程序的兩種方式 參考部落格即可 總結 補充 我們直接假設單核就是乙個核,幹活的就乙個人,不要考慮cpu裡面的核心數 時間上的復用 切換 cpu 分為兩種情況 1.當乙個程式遇到io操作的時候,作業系統會剝奪該程式的cpu執行許可權 作用 提高了cpu的利用率 並且也不影響...

Day38 資料庫入門學習

怎麼才能把資料永久儲存下來,根據我們以前的所學,檔案處理就可以將資料永久儲存。但是檔案處理有很大的問題 1.管理不方便 2.檔案操作效率問題 3.乙個程式不太可能僅執行在同一臺電腦上 那麼為了解決這些問題,採取了提高計算機效能的方式 1.垂直擴充套件 指的是更換效能更好的硬體 2.水平擴充套件 指的...

MySql入門學習 DAY38 資料庫基礎

今日內容 認識資料庫 mysql 啟動伺服器 註冊系統服務 修改與破解密碼 編碼設定 sql語句基礎 資料儲存引擎 資料庫 儲存資料的倉庫 儲存資料的方式 python中變數 檔案處理 為什麼不用變數和檔案儲存資料?變數是儲存於記憶體中無法永久儲存 檔案處理 效率問題,檔案處理是操作硬碟的,是乙個i...