728x90
//프로그래머스 Level2 문제
#include<iostream>
#include<algorithm>
#include<vector>
#include<string>
using namespace std;
bool compare(string a, string b)
{
int a_num = a.length();
int b_num = b.length();
//천이 하나라도 껴있으면 오름 차순
if (a == "1000" || b == "1000") return a < b;
if (a[0] == b[0])
{
if (a[1] == b[1])
{
//이 경우는 그냥 오름차순으로 넘길 수 있음
return a > b;
}
//같지 않거나 한자리 수가 1인 경우임
else
{
if (a_num == 1 || b_num == 1)
{
if (a_num == 1)
{
for (int i = 1; i < b_num; i++)
{
}
}
}
//이 경우 그냥 오름차순으로 넘김 (그냥 추후 지워줘도 될듯)
else
{
return a > b;
}
}
}
return a>b;
}
int main()
{
vector<string> v;
int v1[5] = { 3,30,34,5,9 };
for (int i = 0; i < 5; i++)
{
string a = to_string(v1[i]);
v.push_back(a);
}
sort(v.begin(), v.end(),compare);
for (int i = 0; i < 5; i++)
{
cout << v[i] << " ";
}
}
'낙서' 카테고리의 다른 글
군산공항 버스 시간표 12월 4일 (0) | 2022.12.08 |
---|---|
백준 브론즈 다 밀었음 (0) | 2022.05.10 |
정보처리기사 필기 후기 (0) | 2022.04.24 |
현재 백준 티어 (0) | 2022.04.18 |