반응형
코딩하기 전 생각하기
/*
int, string를 pair로 묶은 값을 저장하는 벡터를 생성한다.
M부터 N까지 숫자와 해당 문자열을 벡터에 저장한다.
문자열을 기준으로 오름차순 정렬이 될 수 있도록 comp 함수를 선언하자.
sort 함수와 comp 함수를 이용하여 벡터를 정렬한다.
한 줄에 10개씩 출력한다.
*/
코드
#include <iostream>
#include <bits/stdc++.h>
using namespace std;
bool comp(pair<int, string> a, pair<int, string> b) {
return a.second < b.second;
}
int main() {
vector<string> str = {
"zero", "one", "two", "three",
"four", "five", "six", "seven",
"eight", "nine"
};
vector<pair<int, string>> v;
int M, N;
cin >> M >> N;
for ( int i = M; i <= N; i++ ) {
string s = "";
for ( auto c : to_string(i) ) {
s += str[c - '0'];
s += " ";
}
v.push_back(pair<int, string>(i, s));
}
sort(v.begin(), v.end(), comp);
for ( int i = 0; i < v.size(); i++ ) {
cout << v[i].first << " ";
if ( i % 10 == 9 ) cout << '\n';
}
}
느낀점
seventy nine이라고 안읽고 seven nine이라고 읽어서 다행이다,,
다른 풀이들을 보고나서 느낀점은 굳이 comp 함수를 안만들고 pair<string, int>로 저장해서 sort했어도 되는구나..
(주의) 기록용으로 작성한 글입니다. 코드가 허접하거나 알고리즘의 효율이 낮을 수 있습니다.
댓글 환영합니다!
반응형
'Algorithm > Baekjoon' 카테고리의 다른 글
[백준/BOJ] 11656번 - 접미사 배열 (파이썬) (0) | 2021.07.16 |
---|---|
[백준/BOJ] 10814번 - 나이순 정렬 (C++) (2) | 2021.07.15 |
[백준/BOJ] 17215번 - 볼링 점수 계산 (C++) (2) | 2021.07.15 |
[백준/BOJ] 1431번 - 시리얼 번호 (C++) (0) | 2021.07.13 |
[백준/BOJ] 10867번 - 중복 빼고 정렬하기 (파이썬) (0) | 2021.07.13 |
댓글