include <iostream>
include <sstream>
include <cstring>
using namespace std;
struct Hotel { string name; string street; float distance; int price; };
void trim(string& str) { // Trim leading spaces while (!str.empty() && isspace(str.front())) { str.erase(str.begin()); } // Trim trailing spaces while (!str.empty() && isspace(str.back())) { str.pop_back(); } }
// Hàm để liệt kê các khách sạn có giá trọ phòng nhỏ hơn hoặc bằng 300 ngàn void listAffordableHotels(Hotel* hotels, int n) { for (int i = 0; i < n; ++i) { if (hotels[i].price <= 300) { cout << hotels[i].name << " , " << hotels[i].street << " , " << hotels[i].distance << ", " << hotels[i].price << "\n"; } } }
// Hàm để liệt kê các khách sạn có khoảng cách tối đa 3 km so với trường Khoa học Huế void listNearbyHotels(Hotel* hotels, int n) { for (int i = 0; i < n; ++i) { if (hotels[i].distance <= 3) { cout << hotels[i].name << " , " << hotels[i].street << " , " << hotels[i].distance << ", " << hotels[i].price << "\n"; } } }
int main() { int n; cin >> n; cin.ignore(); // Bỏ qua ký tự newline sau khi đọc số nguyên
Hotel* hotels = new Hotel[n];
for (int i = 0; i < n; ++i) {
string line;
getline(cin, line);
istringstream iss(line);
string name, street, distanceStr, priceStr;
// Phân tích dữ liệu bằng ký tự '|'
getline(iss, name, '|');
getline(iss, street, '|');
getline(iss, distanceStr, '|');
getline(iss, priceStr, '|');
// Loại bỏ khoảng trắng thừa ở đầu và cuối chuỗi
trim(name);
trim(street);
float distance = stof(distanceStr);
int price = stoi(priceStr);
hotels[i] = {name, street, distance, price};
}
// In ra các khách sạn có giá trọ phòng dưới hoặc bằng 300 ngàn
listAffordableHotels(hotels, n);
// In ra dấu phân cách ***
cout << "***\n";
// In ra các khách sạn có khoảng cách tối đa 3 km so với trường Khoa học Huế
listNearbyHotels(hotels, n);
delete[] hotels;
return 0;
} #include <bits/stdc++.h> using namespace std; typedef struct { int day; int month; int year; } date;
typedef struct { int id; string lname; // H? lót string fname; // Tên date birthday; double mark; } student;
// Hàm so sánh d? s?p x?p theo tên và h? lót bool compareNames(const student &a, const student &b) { if (a.fname != b.fname) { return a.fname < b.fname; // S?p x?p theo tên n?u khác nhau } else { return a.lname < b.lname; // N?u b?ng tên thì s?p x?p theo h? lót } }
int main() { int n; cin >> n;
vector<student> students(n);
for (int i = 0; i < n; ++i) {
cin >> students[i].id;
cin.ignore(); // Ð?c và b? qua d?u cách sau khi d?c s?
getline(cin, students[i].lname);
getline(cin, students[i].fname);
cin >> students[i].birthday.day >> students[i].birthday.month >> students[i].birthday.year;
cin >> students[i].mark;
}
// S?p x?p sinh viên theo th? t? alphabet c?a tên và h? lót
sort(students.begin(), students.end(), compareNames);
// In ra thông tin sinh viên sau khi s?p x?p
int c;
cin>>c;
for (int i = 0; i < c; ++i) {
const auto &s = students[i];
// Ðo?n code x? lý thông tin sinh viên s
cout << s.id << ", " << s.fname << ", " << s.lname << ", " << s.birthday.day << "/" << s.birthday.month << "/" << s.birthday.year << ", " << s.mark << endl;
}
cout<<"***"<<endl;
// int m; // cin >> m; while (true) { string command; cin >> command; if (command == "End") { break; } else if (command == "find") { int id; cin >> id; bool found = false; for (int i=0;i<n;i++) { const auto &s = students[i]; if (s.id == id) { found = true; cout << s.id << ", " << s.fname << ", " << s.lname << ", " << s.birthday.day << "/" << s.birthday.month << "/" << s.birthday.year << ", " << s.mark << endl; break; } } if (!found) { cout << "Not Found!" << endl;
}
}
}
return 0;
} #include<bits/stdc++.h> using namespace std; int main() { string name; getline(cin,name); for(int i=0;i<name.size();i++){ name[i]=tolower(name[i]); } stringstream ss(name); string w; vector<string>v; while(ss>>w){ v.push_back(w); } for(int i=0;i<v.size()-1;i++){ cout<<v[i][0]; } cout<<v[v.size()-1]<<"@husc.edu.vn"<<endl;
}
Points breakdown
Nhập môn lập trình (88.542 points)
OLP (10.750 points)
Problem | Score |
---|---|
Xâu palindrome bản 1 | 10 / 10 |
So sánh xâu | 0.750 / 15 |