-
BOJ 5648: 역원소 정렬알고리즘 2023. 5. 15. 21:58
#BOJ 5648: 역원소 정렬
5648번: 역원소 정렬
모든 원소가 양의 정수인 집합이 있을 때, 원소를 거꾸로 뒤집고 그 원소를 오름차순으로 정렬하는 프로그램을 작성하세요. 단, 원소를 뒤집었을 때 0이 앞에 선행되는 경우는 0을 생략해야합니
www.acmicpc.net
#풀이
숫자를 반대로 바꿔야하는데 진짜 딱 생각나는게 숫자를 10의 제곱수로 나누면 각 자릿수를 구하여 할 수 있지만 너무 귀찮고 실수도 많이 생길 것 같아서 그냥 string 으로 풀었다.
또한 범위가 int 를 넘는 것 같아서 메모리 넉넉할 것 같아 그냥 long long으로 풀었다.
stoll 은 스트링을 long long 으로 바꿔주는 함수이다.
#코드
#include<iostream> // #include<bits/stdc++.h> #include<algorithm> #include<string> using namespace std; long long arr[1000000]; long long n; long long change(string a) { string a1; for (int i = a.size() -1; i >= 0; i--) { a1.push_back(a[i]); } return stoll(a1); } int main() { ios::sync_with_stdio(0); cin.tie(0); cin >> n; for (int i = 0; i < n; i++) { string num; cin >> num; arr[i] = change(num); } sort(arr, arr + n); for (int i = 0; i < n; i++) { cout << arr[i] << '\n'; } return 0; }
'알고리즘' 카테고리의 다른 글
BOJ 2910 : 빈도 정렬 (2) 2023.05.16 BOJ 1181: 단어 정렬 (0) 2023.05.15 BOJ 11652: 카드 (0) 2023.05.15 BOJ 11651: 좌표 정렬하기2 (0) 2023.05.11 BOJ 11650: 좌표 정렬하기 (0) 2023.05.11