PTIT064 - Gộp mảng

Xem dạng PDF

Gửi bài giải


Điểm: 1,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M

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

Cho 2 mảng ~A~ và ~B~ đều chứa ~n~ phần tử đã được sắp xếp không giảm. Nhiệm vụ của bạn là hãy tạo ra mảng ~C~ có ~2*n~ phần tử bao gồm tất cả các phần tử của mảng ~A~ và mảng ~B~ theo thứ tự không giảm.

Input

  • Dòng đầu tiên chứa số ~n~ là số phần tử của mảng ~A~ và mảng ~B~ ~(1 \leq n \leq 10^5)~
  • Dòng tiếp theo chứa ~n~ phần tử của mảng ~A~ theo thứ tự không giảm ~(0 \leq A_i \leq 10^5)~
  • Dòng tiếp theo chứa ~n~ phần tử của mảng ~B~ theo thứ tự không giảm ~(0 \leq B_i \leq 10^5)~

Output

In ra các phần tử của mảng ~C~ theo thứ tự không giảm.

Sample

Input #1
5
1 3 5 7 9
0 2 4 6 8
Output #1
0 1 2 3 4 5 6 7 8 9

Problem source: CLB Lập Trình PTIT


Bình luận

Please read the guidelines before commenting.



  • 0
    dophuchai  đã bình luận lúc 31, Tháng 7, 2026, 2:24

    KHÔNG PHẢI AC ĐÂU AE ĐỪNG CHÉP NHÉ

    include <iostream>

    include <fstream>

    include <vector>

    include <algorithm>

    using namespace std;

    // Sàng số nguyên tố nhỏ (up to 333) vector<int> getprimes(int limit) { vector<bool> isprime(limit + 1, true); isprime[0] = isprime[1] = false; for (int p = 2; p * p <= limit; p++) { if (isprime[p]) { for (int i = p * p; i <= limit; i += p) isprime[i] = false; } } vector<int> primes; for (int p = 2; p <= limit; p++) { if (isprime[p]) primes.pushback(p); } return primes; }

    int main() { // Tối ưu I/O cho C++ iosbase::syncwith_stdio(false); cin.tie(NULL);

    ifstream fin("SDB.INP");
    ofstream fout("SDB.OUT");
    
    // Lập danh sách các số đặc biệt <= 10^6
    vector&lt;long long> sdb;
    
    // Dạng 1: n = 3^8 = 6561
    sdb.push_back(6561);
    
    // Dạng 2: n = (3 * q)^2 với q là số nguyên tố khác 3
    vector<int> primes = get_primes(333);
    for (int q : primes) {
        if (q == 3) continue;
        long long val = 9LL * q * q;
        if (val <= 1000000) {
            sdb.push_back(val);
        }
    }
    
    // Sắp xếp danh sách số đặc biệt
    sort(sdb.begin(), sdb.end());
    
    int T;
    if (fin >> T) {
        while (T--) {
            long long a, b;
            fin >> a >> b;
    
            // Tìm số lượng số đặc biệt trong đoạn [a, b] dùng tìm kiếm nhị phân
            auto it1 = lower_bound(sdb.begin(), sdb.end(), a);
            auto it2 = upper_bound(sdb.begin(), sdb.end(), b);
    
            int count = distance(it1, it2);
            fout << count << "\n";
        }
    }
    
    fin.close();
    fout.close();
    return 0;
    

    }


  • 0
    Duong_Thanh_Khiem_L8  đã bình luận lúc 26, Tháng 7, 2026, 15:48

    FULL AC cho ai cần:

    #include <bits/stdc++.h>
    using namespace std;
    int n;
    vector <int> a, b, c;
    int main(){
        cin >> n;
        a.resize(n);
        b.resize(n);
        for (int i = 0;i < n;i++){
            cin >> a[i] >> b[i];
            c.push_back(a[i]);
            c.push_back(b[i]);
        }
        sort(c.begin(),c.end());
        for (int i = 0;i < 2 * n;i++)cout << c[i] << " ";
        return 0;
    }
    

  • 0
    minhkhang061213  đã bình luận lúc 23, Tháng 4, 2026, 12:33

    include <bits/stdc++.h>

    using namespace std;

    int a[100001]; int b[100001]; int c[100001]; int main() { int n; cin >> n;

    for (int i = 1; i <= n; i++) cin >> a[i];
    for (int i = 1; i <= n; i++) cin >> b[i];
    
    int i = 1, j = 1;
    while (i <= n && j <= n) {
        if(a[i] < b[j]){
            cout << a[i] << " ";
            i++;
        }
        else {
            cout << b[j] << " ";
            j++;
        }
    }
    while (i <= n) {
        cout << a[i] << ' ';
        i++;
    }
    while (j <=n){
        cout << b[j] << ' ';
        j++;
    }
    

    }


  • 0
    lqvinh13  đã bình luận lúc 15, Tháng 12, 2025, 2:03

    dùng vector nhé


  • 0
    khangham  đã bình luận lúc 8, Tháng 12, 2025, 11:38

    hello


  • 0
    minh6a3  đã bình luận lúc 2, Tháng 11, 2025, 9:17

    sos