#include <bits/stdc++.h>
using namespace std;
int main()
{
long long n,a[1000001];
cin>>n;
for(int i=1;i<=n;i++)
{
cin>>a[i];
}
sort(a+1,a+n+1,greater<long long>());
for(int i=1;i<=n;i++)
{
cout<<a[i]<<" ";
}
}
#include <iostream>
using namespace std;
int main() {
int n;
cin >> n;
int t[n];
for (int i = 0; i < n; i++) {
cin >> t[i];
}
int a = 0;
int b = 0;
int i = 0;
int j = n - 1;
int ta = 0;
int tb = 0; \
while (i <= j) {
if (ta <= tb) {
ta += t[i];
a++;
i++;
} else {
tb += t[j];
b++;
j--;
}
}
cout << a << " " << b << endl;
return 0;
}
Đoạn mã bạn đã cung cấp là hai đoạn mã C++ khác nhau. Đoạn mã đầu tiên sắp xếp mảng a theo thứ tự giảm dần và in ra mảng đã sắp xếp. Đoạn mã thứ hai tính toán số lượng phần tử cần lấy từ mảng t để đảm bảo tổng của hai phần tử a và b là nhỏ nhất.