오답노트
[정렬] BOJ 5648번 역원소 정렬 본문
https://www.acmicpc.net/problem/5648
- 문제 파악
N 개의 정수가 입력된다. 이 정수를 뒤집은 수를 오름차순으로 정렬하여 출력하라
- 정답
정수를 모두 문자열로 받아 reverse 함수를 이용해 뒤집고 문자열을 다시 unsigned long long 으로 변환 해주었다.
- 문자열에서 숫자로 바꾸는 함수들
- stoi : string -> int
- stoul : string -> unsigned long
- stoull : string -> unsigned long long
- stof : string -> float
- stod : string -> double
- stold : string -> long double
- reverse 함수
- 함수 원형 : void reverse(const _BidIt _First, const _BidIt _Last)
- const _BidIt _First : 시작 위치
- const _BidIt _Last : 끝 위치
#include "bits/stdc++.h"
using namespace std;
vector<unsigned long long> vec;
int main()
{
cin.tie(0);
cout.tie(0);
ios::sync_with_stdio(0);
int n;
cin>>n;
for(int i = 0 ; i < n ; i++)
{
string str;
cin>>str;
reverse(str.begin(),str.end());
vec.push_back(stoull(str));
}
sort(vec.begin(),vec.end());
for(auto a : vec)
cout<<a<<"\n";
}
'C,C++ > 코딩테스트' 카테고리의 다른 글
[수학] BOJ 11653번 소인수분해 (0) | 2022.06.08 |
---|---|
[정렬] BOJ 7795번 먹을 것인가 먹힐 것인가 (0) | 2022.06.07 |
[정렬] BOJ 11652번 카드 (0) | 2022.06.07 |
[정렬] BOJ 10814번 나이순 정렬 (0) | 2022.06.06 |
[정렬] BOJ 15688번 수 정렬하기 5 (0) | 2022.06.06 |