PH

Viết chương trình giải bài toán:Nam có n viên gạch được đánh số từ 1 đến n. Các viên gạch có độ cứng lần lượt là a1, a2,..., an. Một viên gạch có độ cứng x nghĩa là Nam có thể chồng lên trên viên gạch đó tối đa x viên gạch khác, nếu chồng nhiều hơn thì viên gạch đó bị vỡ. Hỏi Nam có thể sắp được chồng gạch cao nhất là bao nhiêu?Dữ liệu nhập:- Dòng đầu tiên là số nguyên n (1 ≤ n ≤ 100) - là số viên gạch.- Dòng tiếp theo gồm n số nguyên a1, a2,..., an (0 ≤ ai ≤ 100) mỗi số cách nhau một khoảng trắng.Dữ liệu xuất- Là số nguyên xác định chiều cao cao nhất của chồng gạch mà Nam sắp được.

NA
9 tháng 1 2022 lúc 22:26

Dữ liệu nhập:

– Dòng đầu tiên là số nguyên n (1 ≤ n ≤ 100) – là số viên gạch.

– Dòng tiếp theo gồm n số nguyên a1, a2,…, an (0 ≤ ai ≤ 100) mỗi số cách nhau một khoảng trắng.

Dữ liệu xuất

– Là số nguyên xác định chiều cao cao nhất của chồng gạch mà Nam sắp được.

Ví dụInput
1 2 1OutputInput
0 0 0 0 0 0Output1

Thuật toán

Sắp xếp mảng theo hướng tăng dần, dùng 1 biến đếm kiểm tra các phần tử a[i] , nếu a[i] lớn hơn thì tăng biến đếm và đó là kết quả bài toán.

Bình luận (0)
NA
9 tháng 1 2022 lúc 22:26

Dữ liệu nhập:

– Dòng đầu tiên là số nguyên n (1 ≤ n ≤ 100) – là số viên gạch.

– Dòng tiếp theo gồm n số nguyên a1, a2,…, an (0 ≤ ai ≤ 100) mỗi số cách nhau một khoảng trắng.

Dữ liệu xuất

– Là số nguyên xác định chiều cao cao nhất của chồng gạch mà Nam sắp được.

Ví dụInput
1 2 1OutputInput
0 0 0 0 0 0Output1

Thuật toán

Sắp xếp mảng theo hướng tăng dần, dùng 1 biến đếm kiểm tra các phần tử a[i] , nếu a[i] lớn hơn thì tăng biến đếm và đó là kết quả bài toán.

Bình luận (0)
NA
9 tháng 1 2022 lúc 22:27
Ví dụInput
1 2 1OutputInput
0 0 0 0 0 0Output1
Bình luận (0)
PH
9 tháng 1 2022 lúc 22:33

biến đếm là bao nhiêu vậy ạ? bằng 0 ạ?

 

 

 

Bình luận (0)
PH
9 tháng 1 2022 lúc 22:34

code của mình như này, vẫn có chỗ sai sót mong được sửa giúp với ạ

bool comp(long long a, long long b)
{
    return a>b;
}
int main()
{
    long long n,h=0,maxn=0,c=0;
    cin>>n;
    long long a[n];
    for (int i=1;i<=n;i++)
        cin>>a[i];
    sort(a,a+n,comp);
    c=a[1]+1;
    for (int i=1;i<=n;i++)
        h=min(c,a[i]+i);
    if (a[1]==0) cout<<"1";
    else cout<<h;

Bình luận (0)

Các câu hỏi tương tự
VH
Xem chi tiết
ST
Xem chi tiết
H24
Xem chi tiết
HC
Xem chi tiết
TZ
Xem chi tiết
H24
Xem chi tiết
NK
Xem chi tiết
HT
Xem chi tiết
PL
Xem chi tiết