mirror of
https://github.com/lWolvesl/leetcode.git
synced 2026-01-12 09:58:38 +08:00
251112
This commit is contained in:
BIN
.cache/clangd/index/2654.cpp.D86F9D5EF67901DE.idx
Normal file
BIN
.cache/clangd/index/2654.cpp.D86F9D5EF67901DE.idx
Normal file
Binary file not shown.
34
25/11/2654.cpp
Normal file
34
25/11/2654.cpp
Normal file
@@ -0,0 +1,34 @@
|
||||
#include <algorithm>
|
||||
#include <vector>
|
||||
#include <numeric>
|
||||
|
||||
int minOperations(std::vector<int>& nums) {
|
||||
int gcd_min = 0;
|
||||
int n = nums.size();
|
||||
int count = 0;
|
||||
for (auto num : nums) {
|
||||
gcd_min = std::gcd(gcd_min, num);
|
||||
count += num == 1;
|
||||
}
|
||||
if (gcd_min > 1) {
|
||||
return -1;
|
||||
}
|
||||
if (count) return n - count;
|
||||
|
||||
int min_size = n;
|
||||
for(int i = 0;i<n;i++){
|
||||
int g = 0;
|
||||
for (int j = i; j < n; j++) {
|
||||
g = std::gcd(g,nums[j]);
|
||||
if(g == 1){
|
||||
min_size = std::min(min_size,j-i);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
return min_size + n - 1;
|
||||
}
|
||||
|
||||
int main(){
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user