Trang chủ Tin Học Lớp 6 Tách dãy chẵn lẻ Cho một dãy A gồm N số nguyên, hãy tách dãy A[] thành hai dãy, một...
Câu hỏi :

Tách dãy chẵn lẻ Cho một dãy A gồm N số nguyên, hãy tách dãy A[] thành hai dãy, một dãy chứa toàn các phần tử chẵn, dãy kia chứa toán các phần tử lẻ và hai dãy này phải được sắp xếp theo theo trật tự không giảm trước khi in ra. Đầu vào: Dòng đầu tiên của đầu vào chứa một số nguyên T biểu thị số bộ dữ liệu cần kiểm tra. Trong đó, mỗi bộ dữ liệu gồm: Dòng đầu chứa một số nguyên N Dòng thứ hai chứa N số nguyên cách nhau một dấu cách biểu thị các phần tử của dãy A Đầu ra: Ứng với mỗi bộ dữ liệu đầu vào, in ra một dòng chứa lần lượt các phần tử của dãy chẵn, sau đó là các phần tử của dãy lẻ, xem ví dụ để rõ hơn định dạng đầu ra. Ràng buộc: 1 T 100; 1 N 10 mũ 5; 1 A[i] 10 mũ 5, i = 1..N Ví dụ: Đầu vào 2 7 12 34 45 9 8 90 3 5 0 1 2 3 4 Đầu ra 8 12 34 90 3 9 45 0 2 4 1 3

Lời giải 1 :

#include <bits/stdc++.h>
using namespace std;
int t, n, qlml = 0;
int main()
{
    cin >> t;
    while(t--)
    {
        qlml = 0;
        cin >> n;
        int ma[100001]{}, ml[100001]{};
        for(int a = 0; a < n; a++)
            cin >> ma[a];
        sort(ma, ma+n);
        for(int a = 0; a < n; a++)
        {
            if(ma[a] % 2 == 0) cout << ma[a] << " ";
            else
            {
                ml[qlml] = ma[a];
                qlml++;
            }
        }
        for(int a = 0; a < qlml; a++)
            cout << ml[a] << " ";
        cout << endl;
    }
    return 0;
}

$#khanhtaon$

image

Lời giải 2 :

#include <bits/stdc++.h>

using namespace std;

int main()
{
    int t;
    cin>>t;
    while(t--)
    {
        int n,a[100005];
        cin>>n;
        for(int i=1;i<=n;i++) cin>>a[i];
        vector<int> chan,le;
        for(int i=1;i<=n;i++)
        {
            if(a[i]%2==0) chan.push_back(a[i]);
            else le.push_back(a[i]);
        }
        sort(chan.begin(),chan.end());
        sort(le.begin(),le.end());
        for(int i:chan) cout<<i<<" ";
        for(int i:le) cout<<i<<" ";
        cout<<endl;
    }
}

image

Bạn có biết?

Tin học là một ngành khoa học chuyên nghiên cứu quá trình tự động hóa việc tổ chức, lưu trữ, xử lý và truyền dẫn thông tin của một hệ thống máy tính cụ thể hoặc trừu tượng. Tin học bao hàm tất cả các nghiên cứu và kỹ thuật có liên quan đến việc mô phỏng, biến đổi và tái tạo thông tin. Hãy tận dụng sức mạnh của tin học để giải quyết các vấn đề và sáng tạo ra những giải pháp mới!

Nguồn :

Wikipedia - Bách khoa toàn thư

Tâm sự lớp 6

Lớp 6 - Là năm đầu tiên của cấp trung học cơ sở, chúng ta được sống lại những kỷ niệm như ngày nào còn lần đầu đến lớp 1, được quen bạn mới, ngôi trường mới, một tương lai mới. Hãy tận dụng cơ hội này để làm quen và hòa nhập thật tốt!

Nguồn :

sưu tập

Copyright © 2024 Giai BT SGK