#include <iostream>
#include <fstream> // Thư viện để làm việc với file
#include <vector>
#include <algorithm>
using namespace std;
// Cấu trúc lưu thông tin môn học
struct MonHoc {
string maMon;
string tenMon;
int soTinChi;
};
// Hàm so sánh hai môn học theo tên môn học
bool compare(MonHoc a, MonHoc b) {
return a.tenMon < b.tenMon;
}
int main() {
ifstream inputFile("MONHOC.in"); // Mở file input
int n; // Số lượng môn học
inputFile >> n; // Đọc số môn học
scanf("\n"); // Bỏ qua ký tự xuống dòng sau khi nhập số lượng môn
vector<MonHoc> danhSachMonHoc(n); // Mảng lưu danh sách môn học
// Nhập thông tin cho từng môn học từ file
for (int i = 0; i < n; ++i) {
getline(inputFile, danhSachMonHoc[i].maMon);
getline(inputFile, danhSachMonHoc[i].tenMon);
inputFile >> danhSachMonHoc[i].soTinChi;
inputFile.ignore(); // Bỏ qua ký tự xuống dòng sau khi nhập số tín chỉ
}
// Đóng file sau khi đọc dữ liệu
inputFile.close();
// Sắp xếp danh sách theo tên môn học
sort(danhSachMonHoc.begin(), danhSachMonHoc.end(), compare);
// In danh sách đã sắp xếp ra màn hình
for (const auto& mon : danhSachMonHoc) {
cout << mon.maMon << " " << mon.tenMon << " " << mon.soTinChi << endl;
}
return 0;
}