输入格式 第一行输入一个正整数 n n ,表示书的数量。 接下来的 n n行,每行输入一个字符串代表书名,一个正整数代表价格 p p 输出格式 把书名按照价格升序输出
时间: 2024-09-07 10:04:12 浏览: 40
以下是一个C++程序的示例,它读取书籍数量和每本书的名称及其价格,然后按照价格升序输出书名。
```cpp
#include <iostream>
#include <vector>
#include <algorithm>
// 定义一个用于存储书名和价格的结构体
struct Book {
std::string title;
int price;
};
int main() {
int n;
std::cin >> n; // 读取书籍数量
std::vector<Book> books(n);
// 读取每本书的名称和价格,并存储在vector中
for (int i = 0; i < n; ++i) {
std::cin >> books[i].title >> books[i].price;
}
// 使用标准库中的sort函数,按照价格对书籍进行排序
std::sort(books.begin(), books.end(), [](const Book& a, const Book& b) {
return a.price < b.price;
});
// 输出排序后的书名
for (const auto& book : books) {
std::cout << book.title << std::endl;
}
return 0;
}
```
这段代码首先定义了一个`Book`结构体来存储书名和价格。然后读取书籍数量和每本书的信息,将它们存储在一个`std::vector<Book>`中。使用`std::sort`函数并通过lambda表达式指定排序的条件,即价格的升序。最后,遍历排序后的书籍列表,并输出书名。
阅读全文