백준 2750_수 정렬하기 [C++]
본문 바로가기
Algorithm/Python, C++

백준 2750_수 정렬하기 [C++]

by liveloper jay 2022. 7. 13.

문제

 

 

풀이

 이 문제는 입력받은 수를 단순히 정렬하는 문제이므로 sort 함수를 이용하면 손쉽게 해결할 수 있습니다. 그러나 처음에는 sort를 사용하여 접근할 생각을 못해 입력 받은 값에 대해 temp 값을 두고, 이중 for문을 이용하여 두 수를 비교 후 앞의 수가 뒤의 수보다 크기가 작을 경우 두 수의 위치를 바꾸는 방식으로 풀이를 진행하였습니다. 

 

 

소스코드

1. 이중 for문 활용

#include<iostream>
using namespace std;

int main(){
    int n,temp=0;
    cin >> n;
    int arr[n]={0,};
    for (int i = 0; i < n; i++)
    {
        cin >> arr[i];
    }
    
    for (int i = 0; i < n; i++)
    {
        for (int j = i+1; j < n; j++)
        {
            if(arr[j]<arr[i]){
                temp=arr[j];
                arr[j]=arr[i];
                arr[i]=temp;
            }
        }
    }
    
    for (int i = 0; i < n; i++)
    {
        cout << arr[i] <<'\n';
    }
    return 0;
}

 

2. sort 함수 활용

#include <iostream>
#include <algorithm>

using namespace std;

int main(){
    int n;
    cin >> n;
    int arr[n]={0,};
    for (int i = 0; i < n; i++)
    {
        cin >> arr[i];
    }
    
    sort(arr,arr+n);
    for (int i = 0; i < n; i++)
    {
        cout << arr[i] <<'\n';
    }
}

 

 

댓글