#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <vector>
#include <algorithm>
#include <string>
using namespace std;
const int N = 100010;
typedef pair<int, string>st;
vector<st>stu;
bool check(int x)
{
while (x % 2 == 0)
x /= 2;
while (x % 3 == 0)
x /= 3;
while (x % 5 == 0)
x /= 5;
if (x == 1)
return true;
return false;
}
bool cmp(const pair<int, string>& a, const pair<int, string>& b)
{
return a.first < b.first;
}
int main()
{
int n;
cin >> n;
while (n--)
{
int num;
string name;
cin >> name >> num;
stu.push_back({ num,name });
}
//输出抽到丑数人的名字
for (int i = 0; i < stu.size(); i++)
{
if (check(stu[i].first))
cout << stu[i].second << endl;
}
//按数字大小升序排序,输出名字
sort(stu.begin(), stu.end(),cmp);
for (int i = 0; i < stu.size(); i++)
cout << stu[i].second << endl;
//中间插入新名字,并输出排序后所有名字
int newnum;
string newname;
cin >> newname >> newnum;
stu.insert(stu.begin() + n / 2, {newnum, newname});
sort(stu.begin(), stu.end(), cmp);
for (int i = 0; i < stu.size(); i++)
cout << stu[i].second << endl;
return 0;
}
hdu 2018笔试看电影
于 2023-03-11 12:39:13 首次发布