原题链接:蓝桥杯2022年第十三届决赛真题-最大公约数(Python组) 解题思路: 我们需要找最小次数去得到 1,有 1之后顺着就可以把所有数变成 1,可以通过线段树维护区间最大公约数,然后通过二分求解最小次数 注意事项:参考代码: import java.util.*; class Main { static final int N = 100009; static int n; ...
#include<iostream> using namespace std; int gcd(long long int x, long long int y) { long long int z=1; if (x < y)swap(x, y); while(z) { z = x % y; x = y; y = z; } return x;//最大公约数 } int main() { int n; cin >> n;//数组长度 long long int *a =...