Fascination
article thumbnail
Published 2021. 9. 19. 01:40
[C++] BOJ 10814 : 나이순 정렬 CODE/BOJ

[문제]

 

10814번: 나이순 정렬

온라인 저지에 가입한 사람들의 나이와 이름이 가입한 순서대로 주어진다. 이때, 회원들을 나이가 증가하는 순으로, 나이가 같으면 먼저 가입한 사람이 앞에 오는 순서로 정렬하는 프로그램을

www.acmicpc.net

 

 

[문제 풀이]

- List 구조체 선언 후

- List 형식을 가지는 vector 생성

- compare 사용하여 sort()로 나이순 오름차순 정렬

 

 

[코드]

#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;

struct List{
    int age;
    string name;
};

bool compare(const List &i, const List &j){
    return i.age<j.age;
}

int main() {
    int tc;
    cin>>tc;
    vector <List> person;
    List list;

    for(int i=0; i<tc;i++){
        cin>>list.age>>list.name;
        person.push_back(list);
    }
    stable_sort(person.begin(),person.end(),compare);

    for(int i=0;i<tc;i++){
        cout<<person[i].age<<" "<<person[i].name<<"\n";
    }
}

 

 

[실행 결과]

* 구조체 형식으로 vector 만들 생각 못해서 2차원 배열로 시도하다가 실패해서 vector로 방향 틀어서 맞췄음 !

'CODE > BOJ' 카테고리의 다른 글

[C++] BOJ 5086 : 배수와 약수  (0) 2021.10.02
[C++] BOJ 10867 : 중복 빼고 정렬하기  (0) 2021.09.19
[C++] BOJ 2693 : N번째 큰 수  (0) 2021.09.19
[C++] BOJ 2959 : 거북이  (0) 2021.09.17
[C++] BOJ 2752 : 세수정렬  (0) 2021.09.17
profile

Fascination

@euna-319

포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!