https://www.acmicpc.net/problem/11650
문제 이해
아주 간단한 sort문제로 기본 sort()함수를 사용하되, 비교 함수를 짜서 넣어주면 된다.
작성 코드
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
int N;
vector<pair<int, int> > v;
bool compare(pair<int, int> a, pair<int, int> b){
if(a.first < b.first) return true;
else if(a.first == b.first)
{
if(a.second < b.second) return true;
else return false;
}
else{
return false;
}
}
int main(void){
scanf("%d", &N);
for(int i = 0; i<N; i++){
int a, b;
scanf("%d %d", &a, &b);
v.push_back(make_pair(a, b));
}
sort(v.begin(), v.end(), compare);
//printf("\nAfter change: \n");
for(int i = 0; i<N; i++){
printf("%d %d\n", v[i].first, v[i].second);
}
}
'컴퓨터기본 > 문제풀이' 카테고리의 다른 글
[백준] 1181번: 단어 정렬 (0) | 2021.09.11 |
---|---|
[백준] 11651번: 좌표 정렬하기 2 (0) | 2021.09.10 |
[백준] 1436번: 영화감독 숌 (0) | 2021.09.10 |
[백준] 2447번: 별 찍기 - 10 (0) | 2021.09.10 |
[백준] 1427번: 소트인사이드 (0) | 2021.09.06 |