길민호(ethan.mino)
코딩수첩
길민호(ethan.mino)
전체 방문자
오늘
어제
  • 분류 전체보기 (215)
    • Computer Science (0)
    • Web (6)
      • CSS (0)
      • HTML (0)
    • Node.js (0)
    • Javascript (2)
    • Java (46)
      • Spring (27)
      • Jsp (0)
    • C\C++ (2)
    • Programming (0)
    • AI (0)
    • Database (7)
    • Git (5)
    • Algorithm (119)
      • Stack (0)
      • Queue (0)
      • Linked List (0)
      • Sort (0)
      • Simulation (27)
      • Recursion (0)
      • Backtracking (4)
      • Two Pointer (3)
      • Dynamic Programming (19)
      • Greedy (10)
      • Graph (3)
      • Dijkstra (1)
      • BFS\DFS (8)
      • Floyd (1)
      • MST (4)
      • Tree (4)
      • Binary Search (8)
      • Binary Search Tree (4)
    • IntelliJ (4)
    • Vscode (0)
    • Operating System (0)
    • 후기 (3)
    • 성장일지 (13)
    • 스터디 (7)
    • 설치 (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • ㅡ

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
길민호(ethan.mino)

코딩수첩

Algorithm

[백준 5648번] 역원소 정렬 (C++)

2022. 4. 12. 03:59

https://www.acmicpc.net/problem/5648

 

5648번: 역원소 정렬

모든 원소가 양의 정수인 집합이 있을 때, 원소를 거꾸로 뒤집고 그 원소를 오름차순으로 정렬하는 프로그램을 작성하세요. 단, 원소를 뒤집었을 때 0이 앞에 선행되는 경우는 0을 생략해야합니

www.acmicpc.net


stoi, atoi 함수의 반환형은 Int형이기 때문에 역원소 정렬 문제에서 사용하면, Out of range 런타임 에러가 발생합니다. 따라서 stol을 사용해야합니다. 직접 stol을 구현하는 방법은 아래와 같습니다.

 

long long stol(string & str){
    long long result = str[0] - 48;
    for(int i = 1; i < str.size(); i++){
        result = (result * 10) + str[i] - 48;
    }
    return result;
}

 

아래는 전체 코드입니다.

 

#include <bits/stdc++.h>
using namespace std;

long long arr[1000001];

int main(){
    ios::sync_with_stdio(0);
    cin.tie(0);
    int n; cin >> n; 
    
    for(int i = 0; i < n; i++){
        string str; cin >> str;
        reverse(str.begin(), str.end()); // 거꾸로 뒤집음
        arr[i] = stol(str); // long long형으로 변환
    }
    sort(arr, arr + n); // 정렬
    for(int i = 0 ; i < n; i++) cout << arr[i] << "\n";
}

 

'Algorithm' 카테고리의 다른 글

[백준 7795번] 먹을 것인가 먹힐 것인가 (C++)  (0) 2022.04.12
[백준 1431번] 시리얼 번호 (C++)  (0) 2022.04.12
[백준 11652번] 카드 (C++)  (0) 2022.04.12
[백준 1541번] 잃어버린 괄호 (C++)  (0) 2022.04.07
[백준 11660번] 구간 합 구하기 5 (C++)  (0) 2022.04.07
    'Algorithm' 카테고리의 다른 글
    • [백준 7795번] 먹을 것인가 먹힐 것인가 (C++)
    • [백준 1431번] 시리얼 번호 (C++)
    • [백준 11652번] 카드 (C++)
    • [백준 1541번] 잃어버린 괄호 (C++)
    길민호(ethan.mino)
    길민호(ethan.mino)
    💻 호기심 많은 서버 개발자 길민호입니다.

    티스토리툴바