LeetCode 第 152 場周賽

2022-02-06 13:34:09 字數 2730 閱讀 4705

1.1 題目描述

1.2 解題思路

先統計出1-n中有多少個質數,得到質數個數\(x\),剩下的數\(y = n - x\);

使用排列組合公式得出結果

\(a_x^x a_y^y\)

1.3 解題**

private static final long inf = 1000000007;

public int numprimearrangements(int n)

for (int i = 1; i <= other; i++)

return (int) res;

}/**

* 判斷n個數中有多少個質數

** @param n

* @return

*/private int countprime(int n)

}return count;

}/**

* 判斷是否是質數

** @param n

* @return

*/private boolean isprime(int n)

for (int i = 2; i <= math.sqrt(n); i++)

}return true;

}

2.1 題目描述

2.2 解題思路

非常簡單的一道題,理解清楚題意就好。只要是連續的k天,都可以。

2.3 解題**

public class solution 

for (int j = 0; j < k; j++)

if (sum > upper)

if (sum < lower)

}return res;}}

3.1 題目描述

3.2 解題思路

注意審題,可以對子串進行重新排序。

思路1:所有可以統計子串中字元出現的次數。(超時)

思路2:使用動態規劃的思想,定義dict[n][t],dict[3][4]表示從第0個字元,到第3個字元的子串,第5個字元e的個數。(超時)

思路3:使用位運算的思想,只關心每個字元是奇數或偶數,定義dict[n],表示0-n的子字串的異或運算結果。

例如:abc的位異或運算結果為1+2+4 = 7。

abca = 1+2+4 -1 = 2+4 = 6

公式為

bitarray[i] = 1 << (strdict[i] - 'a');

if (i > 0)

最後統計子字串異或結果中1的個數。

公式為

while (sum != 0)
3.3 解題**

思路1:下面的提交,會提示超時。

public class solution 

return res;

}private boolean isalindrome(string str, int len, int k)

if (len == 1 || len / 2 <= k)

int z = new int[26];

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

int diff = 0;

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

}if (diff / 2 <= k)

return false;}}

思路2:提交仍然會超時

public class solution2 

dict[i][strdict[i] - 'a']++;

}for (int i = 0; i < queries.length; i++)

} else }}

res.add(diff / 2 <= k);

}return res;}}

思路3:可以ac

public class solution3 

}for (int i = 0; i < queries.length; i++) else

//計算子串的位中有多少個1

int count = 0;

//k <= count/2 等價於 2*k + 1 <= count

leetcode 第132場周賽

愛麗絲和鮑勃一起玩遊戲,他們輪流行動。愛麗絲先手開局。最初,黑板上有乙個數字n。在每個玩家的回合,玩家需要執行以下操作 如果玩家無法執行這些操作,就會輸掉遊戲。只有在愛麗絲在遊戲中取得勝利時才返回true,否則返回false。假設兩個玩家都以最佳狀態參與遊戲。示例 1 輸入 2輸出 true解釋 愛...

leetcode周賽 第176場

題目描述 給你乙個 m n 的矩陣 grid,矩陣中的元素無論是按行還是按列,都以非遞增順序排列。請你統計並返回 grid 中 負數 的數目。示例 1 輸入 grid 4,3,2,1 3,2,1,1 1,1,1,2 1,1,2,3 輸出 8 解釋 矩陣中共有 8 個負數。示例 2 輸入 grid 3...

leetcode 第 180 場周賽

大佬都是3 5分鐘一題,而我10分鐘一題,最後一題還不會。qaq 5356.矩陣中的幸運數 給你乙個m n的矩陣,矩陣中的數字各不相同。請你按任意順序返回矩陣中的所有幸運數。幸運數是指矩陣中滿足同時下列兩個條件的元素 class solution object def luckynumbers se...