[C++] pair 와 vector

E woo·2022년 7월 2일
0

개발 일기

목록 보기
1/15

Pair

Pair 형태로 된 쌍을 vector에 저장하기 위해서 사용된다.

	pair<int, int> p1 = make_pair(1,2);
    pair<int, int> p2 = {1, 2};
    pair<int, int> arr[51];

다음과 같이 make_pair와 중괄화 {}를 이용해 초기화를 할 수 있고 배열의 형태로 사용할 수 있다.

	pair<int, int> p1 = make_pair(1,2);
    p1.first = 3;
    p1.second = 4;

first와 second 로 pair에 첫번째와 두번째 인자에 접근할 수 있다.

구현 예시

백준 7568번 덩치 문제로
몸무게 a 와 키 b 가 주어질 때 두 값이 모두 다른 사람에 비해 클 경우에만
더 덩치가 크다고 판단하여 그에 해당하는 등수들을 출력하는 문제이다.

#include <iostream>
#include <algorithm>

using namespace std;

int main()
{
    cin.tie(NULL);
	ios::sync_with_stdio(false);

    int n;
    cin >> n;
    pair<int,int> my_p[51];


    for(int i = 0 ; i < n; i++)
    {
        int a, b;
        cin >> a >> b;
        my_p[i] = {a,b};
    }

    for(int i = 0; i < n; i++)
    {
        int rank = 1;
        for(int j = 0; j < n; j++)
        {
            if ((my_p[i].first < my_p[j].first) && (my_p[i].second < my_p[j].second))
            {
                rank++;
            }
        }
        cout << rank << " ";
    }
    return 0;
}

Vector에 pair 쌍으로 저장

	vector<pair<int, int>> my_v;
    my_v.push_back(make_pair(1,2));

vector에 저장할 때도 pair 형태에 맞게 선언하고 마찬가지로 형태에 맞게 저장해주면 된다.

profile
뒘벼

0개의 댓글