본문 바로가기
알고리즘/문제

[백준] 11650. 좌표 정렬하기(1, 2) <C++>

by 코드 이야기 2020. 9. 4.
728x90

www.acmicpc.net/problem/11650

 

11650번: 좌표 정렬하기

첫째 줄에 점의 개수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N개의 줄에는 i번점의 위치 xi와 yi가 주어진다. (-100,000 ≤ xi, yi ≤ 100,000) 좌표는 항상 정수이고, 위치가 같은 두 점은 없다.

www.acmicpc.net

간단한 정렬 문제이다. 

 

pair를 사용한 정렬 연습에 적절한 문제!

 

 

- pair의 간단한 사용 방법

 

[C++] pair

 Pair 란? - 두 객체를 하나로 묶어주는 클래스이다. (좌표 등을 표현하기에 적절하다.) - 헤더에 존재한다.  Pair의 기본 사용 방법 선언 pair <[data type 1], [data type 2]> p; - 묶어줄 두 값의 데이터 타..

korean-otter.tistory.com

 

 

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

pair<int, int> arr[100001];
int n, s, x, y;

int main() {
  cin >> n;
  for(int i=0; i<n; i++) {
    cin >> x >> y;
    arr[i] = make_pair(x, y);
  }

  sort(arr, arr+n);

  for(int i=0; i<n; i++) 
    cout << arr[i].first << ' ' << arr[i].second << '\n';
}

 

 

 

 

좌표 정렬하기를 했다면 이 문제도 풀어보자..!

 

> 좌표 정렬하기 2

 

11651번: 좌표 정렬하기 2

첫째 줄에 점의 개수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N개의 줄에는 i번점의 위치 xi와 yi가 주어진다. (-100,000 ≤ xi, yi ≤ 100,000) 좌표는 항상 정수이고, 위치가 같은 두 점은 없다.

www.acmicpc.net

 

728x90

댓글