Dolphins의 HelloWorld

[백준]Baekjoon10814(정렬) 본문

Algorithm/baekjoon문제풀이

[백준]Baekjoon10814(정렬)

돌핀's 2018. 8. 12. 12:13

문제링크 : https://www.acmicpc.net/problem/10814




#include <iostream>
#include <algorithm>
#include <vector>
#include <string>

using namespace std;

struct Person {
	int age; //나이
	string name; //이름
	int number; //순서
};
bool cmp(const Person &x, const Person &y) {
	if (x.age < y.age) return true; //나이순으로 정렬
	else if (x.age == y.age)//나이가 같다면 번호순으로 정렬
		return x.number < y.number;
	else
		return false;
}
int main()
{
	int number = 1;

	Person p;
	vector<Person> v; //Person구조체를 인자로 가지는 vector 선언

	int N;
	scanf("%d", &N);
	while (N--) {
		p.number = number++; //번호는 들어온 순서대로
		cin >> p.age >> p.name; //나이,이름 입력
		v.push_back(p);
	}
	sort(v.begin(), v.end(), cmp);
	for (int i = 0; i < v.size(); i++) {
		cout << v[i].age << " " << v[i].name << '\n';
	}
}


sort함수 쓰는 법 : http://dolphins-it.tistory.com/108?category=771381

Comments