原创 字節跳動2018校招後端方向 [編程題]用戶喜好

題目描述: 時間限制:C/C++ 3秒,其他語言6秒 空間限制:C/C++ 256M,其他語言512M 爲了不斷優化推薦效果,今日頭條每天要存儲和處理海量數據。假設有這樣一種場景:我們對用戶按照它們的註冊時間先後來標號,對於一類文章,每個

原创 平面點對問題,切比雪夫距離

題目描述 給定平面的n個點(n<=1e5),所有座標的絕對值在50000以內,現在問你有多少對點之間的距離不小於d。這裏距離描述爲兩點的曼哈頓距離,即dist=|xi-xj|+|yi-yj|。 思路 如果將平面上小於等於d的曼哈頓距離畫出

原创 AtCoder Grand Contest 041 B.Voting Judges (二分)

題目鏈接:https://atcoder.jp/contests/agc041/tasks/agc041_b 題目大意: 有n個問題,m個裁判,每個裁判會給v個不同的問題投票,投一票加一分;同時每個問題還有一個ai作爲初始分數,現在在所有

原创 UValive 4288 (二分圖最大獨立集)

題目大意 有n個人,有c只貓與d只狗,每個人要麼喜歡一隻狗且討厭一隻貓,要麼喜歡一隻貓且討厭一隻狗,所以每個人都希望自己喜歡的被留下,自己討厭的被帶走,這樣這個人就會滿足,現在你需要找到一個貓狗集合方案,使得滿足的人儘量多,求最多的滿足人

原创 Codeforces 1278 D.Segment Tree(排序+set)

題目鏈接:https://codeforces.com/contest/1278/problem/D 題目大意: 給定一堆線段[li,ri],每個線段的端點都不一樣,如果兩個線段相交,那麼他們必須是有一段相交而不是內嵌,比如[1,3]與[

原创 Codeforces 1255 div2 E1 Send Boxes to Alice (Easy Version)

題目描述 給你一個序列,ai表示i位置有多少個糖果,每次你可以將一個位置i的一個糖果給位置i+1或者位置i-1(如果存在的話),現在你需要對糖果進行移動,對於每個有糖果的堆,糖果的數量必須是一個數k(k>1)的倍數,允許空堆的存在,問你最

原创 AtCoder Beginner Contest 149 F.Surrounded Nodes (期望)

題目鏈接:https://atcoder.jp/contests/abc149/tasks/abc149_f 題目大意: 給定一個N個節點的樹,每個節點有1/2的概率染黑,有1/2的概率染白,隨機染色之後,在樹上找到一個最小的連通塊S,使

原创 AtCoder Beginner Contest 150 D - Semi Common Multiple

題目描述 給定一個n長度的數組A=a1,a2,a3.....an,數組元素均爲偶數,現在定義一個半公倍數X如下: 對於所有的i∈[1,n],都存在一個非負整數p,滿足​ 題解 請你找到在區間[1,M]的範圍內,有多少個數組A的半公倍數

原创 簡易的負載均衡服務器——springsnail

簡易的負載均衡服務器——springsnail 《linux高性能服務器編程》作者開源的一款簡易負載均衡服務器,整個項目代碼1400多行,短小精悍,適合初學者學習與模仿。該項目能從所有邏輯服務器中選取負荷最小的一臺來處理新的客戶連接,並且

原创 [HAOI2015]樹上染色(樹上揹包)

題目描述 有一棵點數爲 N 的樹,樹邊有邊權。給你一個在 0~ N 之內的正整數 K ,你要在這棵樹中選擇 K個點,將其染成黑色,並將其他 的N-K個點染成白色 。 將所有點染色後,你會獲得黑點兩兩之間的距離加上白點兩兩之間的距離的和的受

原创 狀壓dp水題練習

狀壓dp水題練習 吉比特筆試第二題(狀壓dp) 題目大意: 給定一個長度爲n(n<=15)的數字,每一位爲1~9中的一個數字,現在你可以將整個數字進行全排列打亂,問你新組成的數字中有多少個數字是m的倍數?(m<=50) 比如,S=123,

原创 Codeforce 1288 E. Messenger Simulator (思維+樹狀數組)

題目鏈接:https://codeforces.com/contest/1288/problem/E 題目大意: 給定一個1到n的排列,現在有m個操作,每個操作給定一個數x,表示將x移動到排列的第一個,其他位置相對不變,問你每個數,他的位

原创 美團筆試覆盤

啥也不說了,菜就得捱打。 題目大意: 給定一個數組a[i],長度爲n<=1e5,你必須在其中刪除一個數,使得最長連續上升子序列最長。問你最長多長。 思路: dp[i][0]表示i-1之前都沒有刪除的以i爲結尾的最長上升子串的長度,dp[i

原创 Codeforce 1260 D.A Game with Traps(二分+貪心)

題目鏈接:https://codeforces.com/contest/1260/problem/D 題目大意: 一個長度爲n+1的直線上有k個陷阱,每個陷阱描述爲{l,r,v},表示這個陷阱的起始點l,終止點r,力量值v,你有m個士兵,

原创 Linux高性能服務器編程學習筆記——簡單半同步/半異步進程池的實現

這是遊雙大大的《linux高性能服務器編程》第15章實現的半同步/半異步的進程池,使用了統一事件源的思想,這是我在閱讀完源碼之後記下的筆記以及註釋,確確實實學習到了很多東西,只有在實戰編程中才能記得更牢靠,更熟練。 半同步/半異步框架屬於