vector a(n);
for(ll i = 0; i < n; ++i) cin >> a[i];
sort(a.begin(), a.end(), greater());
for(ll i = 2; i < n; i += 3) sum += a[i];
cout << sum;
return 0;
}
Giải thích chi tiết về code:
Nhập dữ liệu:
Dữ liệu đầu vào là một số nguyên n (số phần tử trong mảng).
Sau đó, nhập các phần tử mảng a[1] đến a[n].
Sắp xếp mảng:
Mảng a được sắp xếp theo thứ tự giảm dần (giảm dần từ phần tử lớn nhất đến nhỏ nhất) sử dụng hàm sort() với greater() làm đối số.
Tính tổng:
Sau khi mảng đã được sắp xếp, ta tính tổng các phần tử có chỉ số là bội số của 3 (tức là các phần tử có chỉ số 3, 6, 9, ...).
Vòng lặp bắt đầu từ chỉ số 3, và mỗi lần tăng chỉ số thêm 3 (vì ta chỉ muốn lấy các chỉ số chia hết cho 3). Mỗi lần duyệt qua chỉ số, ta cộng giá trị của phần tử tương ứng vào biến sum.
In kết quả:
Cuối cùng, in ra giá trị của biến sum, là tổng các phần tử ở vị trí 3, 6, 9,... trong mảng đã được sắp xếp.
Ví dụ minh họa:
Giả sử:
Input:
6
5 1 7 3 8 6
Sau khi sắp xếp theo thứ tự giảm dần: a = [8, 7, 6, 5, 3, 1].
Các phần tử có chỉ số chia hết cho 3 là a[3] = 6 và a[6] = 1.
Tổng các phần tử này là 6 + 1 = 7.
Output sẽ là:
7
Tổng cộng 1 trả lời
#include <bits/stdc++.h>
using namespace std;
#define ll long long
int main() { ll n, sum = 0; cin >> n;
vector a(n); for(ll i = 0; i < n; ++i) cin >> a[i];
sort(a.begin(), a.end(), greater());
for(ll i = 2; i < n; i += 3) sum += a[i];
cout << sum; return 0; }
Giải thích chi tiết về code: Nhập dữ liệu:
Dữ liệu đầu vào là một số nguyên n (số phần tử trong mảng). Sau đó, nhập các phần tử mảng a[1] đến a[n]. Sắp xếp mảng:
Mảng a được sắp xếp theo thứ tự giảm dần (giảm dần từ phần tử lớn nhất đến nhỏ nhất) sử dụng hàm sort() với greater() làm đối số. Tính tổng:
Sau khi mảng đã được sắp xếp, ta tính tổng các phần tử có chỉ số là bội số của 3 (tức là các phần tử có chỉ số 3, 6, 9, ...). Vòng lặp bắt đầu từ chỉ số 3, và mỗi lần tăng chỉ số thêm 3 (vì ta chỉ muốn lấy các chỉ số chia hết cho 3). Mỗi lần duyệt qua chỉ số, ta cộng giá trị của phần tử tương ứng vào biến sum. In kết quả:
Cuối cùng, in ra giá trị của biến sum, là tổng các phần tử ở vị trí 3, 6, 9,... trong mảng đã được sắp xếp.
Ví dụ minh họa: Giả sử: Input: 6 5 1 7 3 8 6 Sau khi sắp xếp theo thứ tự giảm dần: a = [8, 7, 6, 5, 3, 1]. Các phần tử có chỉ số chia hết cho 3 là a[3] = 6 và a[6] = 1. Tổng các phần tử này là 6 + 1 = 7. Output sẽ là: 7