THPTTD_97 - Dãy nguyên tố cùng nhau

Xem dạng PDF

Gửi bài giải


Điểm: 4,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
Input: COPRIME.inp
Output: COPRIME.out

Tác giả:
Dạng bài
Ngôn ngữ cho phép
C, C#, C++, Go, Java, JavaScript, Kotlin, Pascal, Perl, PHP, PyPy, Python, Ruby, Rust, Scratch, Swift

Trong trường hợp đề bài hiển thị không chính xác, bạn có thể tải đề bài tại đây: Đề bài


Bình luận

Please read the guidelines before commenting.



  • 0
    ToiNhoDuongThanhThao  đã bình luận lúc 11, Tháng 6, 2026, 3:08

    include <iostream>

    include <vector>

    include <numeric>

    include <algorithm>

    include <fstream>

    using namespace std;

    // Hàm tính GCD sử dụng thuật toán Euclid int gcd(int a, int b) { while (b) { a %= b; swap(a, b); } return a; }

    int main() { iosbase::syncwith_stdio(false); cin.tie(NULL);

    ifstream cin_f("COPRIME.INP");
    ofstream cout_f("COPRIME.OUT");
    
    int n;
    if (!(cin_f >> n)) return 0;
    vector<int> a(n);
    for (int i = 0; i < n; ++i) cin_f >> a[i];
    
    if (n < 2) {
        cout_f << 0 << endl;
        return 0;
    }
    
    int max_len = 0;
    int current_len = 1;
    bool found = false;
    
    for (int i = 0; i < n - 1; ++i) {
        if (gcd(a[i], a[i + 1]) == 1) {
            current_len++;
            max_len = max(max_len, current_len);
            found = true;
        } else {
            current_len = 1;
        }
    }
    
    // Nếu không tìm thấy cặp nào có gcd bằng 1, kết quả là 0
    if (!found) cout_f << 0 << endl;
    else cout_f << max_len << endl;
    
    return 0;
    

    }