code giúp mình c++ nhaa

code giúp mình c++ nhaa
Câu trả lời này dùng AI, hãy kiểm tra lại trước khi sử dụng
#include
#include
#include

using namespace std;

struct Team {
int solved;
int time;

bool operator<(const Team& other) const {
if (solved == other.solved) {
return time < other.time;
}
return solved > other.solved;
}
};

int main() {
int m, n;
cin >> m >> n;

vector teams(m);

for (int i = 0; i < m; i++) {
int solved = 0;
int totalTime = 0;
for (int j = 0; j < n; j++) {
int time;
cin >> time;
if (time > 0) {
solved++;
totalTime += time;
}
}
teams[i] = {solved, totalTime};
}

sort(teams.begin(), teams.end());

vector ranks;

for (int i = 0; i < m; i++) {
if (i == 0 || (teams[i].solved != teams[i-1].solved || teams[i].time != teams[i-1].time)) {
ranks.push_back(i + 1);
} else {
ranks.push_back(ranks[i - 1]);
}
}

for (int i = 0; i < m; i++) {
cout << "Team " << (i + 1) << ": Rank " << ranks[i] << endl;
}

return 0;
}

Giải thích:
- Chương trình này xây dựng cấu trúc `Team` để lưu trữ số bài dự thi đã giải và thời gian tổng cộng của mỗi đội.
- Sau khi nhập số đội và số bài dự thi, chương trình sẽ nhận thời gian giải từng bài cho mỗi đội.
- Số bài giải được và thời gian giải tổng được tính toán và lưu vào mảng đội.
- Cuối cùng, sử dụng hàm `sort` để sắp xếp mảng đội theo thứ tự đã giải được nhiều bài nhất và thời gian giải ít nhất.
- Sau khi đã sắp xếp, chương trình sẽ xác định thứ hạng của từng đội và in ra kết quả.
Đăng phản hồi