###### tags: `BiWeekly Contest` # BiWeekly Contest 137 ## [3254. Find the Power of K-Size Subarrays I](https://leetcode.com/problems/find-the-power-of-k-size-subarrays-i/) (<font color=#00B8A3>Easy</font>) 限制 : <ul> <li><code>1 <= n == nums.length <= 500</code></li> <li><code>1 <= nums[i] <= 10<sup>5</sup></code></li> <li><code>1 <= k <= n</code></li> </ul> ### Solution #### 時間複雜度: $O(n*k)$ #### 空間複雜度: $O(n)$ 程式碼: ```c++= class Solution { public: bool isOK(vector<int>& nums) { for (int i = 1; i < nums.size(); i++) { if (nums[i] - nums[i - 1] != 1) { return false; } } return true; } vector<int> resultsArray(vector<int>& nums, int k) { vector<int> record; vector<int> result; int i = 0; for (; i < k - 1; i++) { record.push_back(nums[i]); } for (; i < nums.size(); i++) { record.push_back(nums[i]); if (isOK(record) == true) { result.push_back(nums[i]); } else { result.push_back(-1); } record.erase(record.begin() + 0, record.begin() + 1); } return result; } }; ``` ## [3255. Find the Power of K-Size Subarrays II](https://leetcode.com/problems/find-the-power-of-k-size-subarrays-ii/) (<font color=#FFC011>Medium</font>) 限制 : <ul> <li><code>1 <= n == nums.length <= 10<sup>5</sup></code></li> <li><code>1 <= nums[i] <= 10<sup>5</sup></code></li> <li><code>1 <= k <= n</code></li> </ul> ### Solution #### 時間複雜度: $O(n)$ #### 空間複雜度: $O(n)$ 程式碼: ```c++= class Solution { public: vector<int> resultsArray(vector<int>& nums, int k) { if(nums.size() == 1 ) return nums; vector<bool> isValid; for (int i = 1; i < nums.size(); i++) { isValid.push_back(nums[i] - nums[i - 1] == 1); } vector<int> result; int left = 0, right = k - 1, sum = 0; for (int i = left; i < right; i++) { sum += isValid[i]; } while (right <= isValid.size()) { if (sum == (k - 1)) { result.push_back(nums[right]); } else { result.push_back(-1); } sum -= isValid[left++]; sum += isValid[right++]; } return result; } }; ``` ## [3]()(<font color=#FFC011>Medium</font>) 限制 : <ul> <li><code>10<sup>4</sup></code></li> </ul> ### Solution #### 時間複雜度: $O()$ #### 空間複雜度: $O()$ 程式碼: ```c++= ``` ## [4]()(<font color=#FF375F>Hard</font>) 限制 : <ul> <li><code>10<sup>4</sup></code></li> </ul> ### Solution #### 時間複雜度: $O()$ #### 空間複雜度: $O()$ 程式碼: ```c++= ```