這裡t1:
根據題意,符合題目要求的只有兩種字串:0101010…或1010101…,因此,我們可以直接構造這兩種字串並比較與原串的差異即可。
附上**:
對於t2,我們可以考慮用數學方法處理。即統計每乙個連續的相同的子串長度,並用求和公式求出值。
由於t3資料較為龐大,我們考慮用二分法進行求解。
**如下:
本題實際上是一道較為簡單的暴力題(至少我覺得是這樣的)。我們可以將符合條件的三元組儲存起來,通過桶排求出每個點的度數,然後就可以求出這個三元組的度數。值得一提的是,這道題最難的地方在於stl的操作與運用,處理讀入資料和輸出資料花費了我不少時間。
**如下:
class solution總結:其實本場比賽並不難,但較為注重細節。由於我的粗心大意,我t4竟然沒有來得及做完,比賽就停止了!一定得好好吸取教訓!g[u][v] = g[v][u] = true;
bin[u]++;
bin[v]++;
}for(int x = 1;x <= n;x++)
for(int y = x + 1;y <= n;y++)
for(int z = y + 1;z <= n;z++)
if(g[x][y] && g[y][z] && g[x][z])
trio.push_back(make_pair(x, make_pair(y, z)));
if(trio.empty()) return -1;
vector < pair < int, pair < int, int > > > :: iterator it;
int ans = int_max;
for(it = trio.begin();it != trio.end();it++)
return ans;}};
LeetCode第228場周賽
考慮兩種最終情況,乙個字串,要想構造成 交替二進位制 一種是0開頭,一種是1開頭,和下標聯絡起來,即奇數下標放奇數偶數下標放偶數和奇數下標放偶數偶數下標放奇數。這是兩個最終狀態,遍歷字串,向兩種最終狀態進行改變,記錄改變的次數,取兩個次數的最小值即可。class solution else 奇數下標...
第 228 場周賽記錄(490 2483
這題其實還是慢了,應該1分鐘能搞定,因為資料量很小,所以可以直接考慮2個for迴圈驗證0101 和1010這2種情況的數量,都不用再去做什麼推斷之類的。這題也很簡單,其實只要知道乙個 aaaa裡包含多少個同構字串即可 當時竟然算錯了。應該直接用土方法算1個簡單的aaaa裡包含多少個,算出來就可以 4...
leetcode 第132場周賽
愛麗絲和鮑勃一起玩遊戲,他們輪流行動。愛麗絲先手開局。最初,黑板上有乙個數字n。在每個玩家的回合,玩家需要執行以下操作 如果玩家無法執行這些操作,就會輸掉遊戲。只有在愛麗絲在遊戲中取得勝利時才返回true,否則返回false。假設兩個玩家都以最佳狀態參與遊戲。示例 1 輸入 2輸出 true解釋 愛...