Initiate Luogu

This commit is contained in:
e2hang
2025-08-13 21:38:49 +08:00
parent ab606e0cbd
commit 8bfe9f31f3
22 changed files with 735 additions and 0 deletions

51
Luogu/P1104Birthday.cpp Normal file
View File

@@ -0,0 +1,51 @@
#include <iostream>
#include <cstring>
using namespace std;
int main() {
int n;
cin >> n;
int birthdays[n][3];
string name[n];
for (int i = 0; i < n; i++) {
cin>>name[i]>>birthdays[i][0]>>birthdays[i][1]>>birthdays[i][2];
}
bool flag = false;
while (flag == false){
int js = 0;
for (int i = 0; i < n - 1; i++) {
if(birthdays[i][0]>birthdays[i+1][0]){
js++;
swap(name[i],name[i+1]);
swap(birthdays[i][0],birthdays[i+1][0]);
swap(birthdays[i][1],birthdays[i+1][1]);
swap(birthdays[i][2],birthdays[i+1][2]);
}
if(birthdays[i][0]==birthdays[i+1][0]&&birthdays[i][1]>birthdays[i+1][1]){
js++;
swap(name[i],name[i+1]);
swap(birthdays[i][0],birthdays[i+1][0]);
swap(birthdays[i][1],birthdays[i+1][1]);
swap(birthdays[i][2],birthdays[i+1][2]);
}
if(birthdays[i][0]==birthdays[i+1][0]&&birthdays[i][1]==birthdays[i+1][1]&&birthdays[i][2]>birthdays[i+1][2]){
js++;
swap(name[i],name[i+1]);
swap(birthdays[i][0],birthdays[i+1][0]);
swap(birthdays[i][1],birthdays[i+1][1]);
swap(birthdays[i][2],birthdays[i+1][2]);
}
if(birthdays[i][0]==birthdays[i+1][0]&&birthdays[i][1]==birthdays[i+1][1]&&birthdays[i][2]==birthdays[i+1][2]){
swap(name[i],name[i+1]);
swap(birthdays[i][0],birthdays[i+1][0]);
swap(birthdays[i][1],birthdays[i+1][1]);
swap(birthdays[i][2],birthdays[i+1][2]);
}
}
if(js == 0) flag = true;
}
for (int i = 0; i < n; i++) {
cout<<name[i]<<endl;
}
return 0;
}