반응형
전체 코드
#include <algorithm> // 알고리즘 함수를 사용하기 위한 헤더
#include <iostream> // 입출력을 위한 헤더
#include <string> // 문자열을 다루기 위한 헤더
using namespace std;
int main() {
string str, str1, str2; // 문자열 변수 선언
// 한 줄을 입력 받음
getline(cin, str);
// 입력이 비어있으면 "0"을 출력하고 프로그램 종료
if (str.empty()) {
cout << "0";
return 0;
}
// 공백을 기준으로 문자열을 두 부분으로 나눔
for (int i = 0; i < str.length(); i++) {
if (str[i] == ' ') {
str1 = str.substr(0, i);
str2 = str.substr(i + 1, str.length());
}
}
// 두 부분을 뒤집음
reverse(str1.begin(), str1.end());
reverse(str2.begin(), str2.end());
// 문자열을 정수로 변환
int num1 = stoi(str1);
int num2 = stoi(str2);
// 두 정수 중 큰 값을 출력
if (num1 >= num2) {
cout << num1;
} else {
cout << num2;
}
return 0; // 프로그램 정상 종료
}
1. `reverse` 함수:
- `reverse` 함수는 특정 범위의 요소들을 뒤집습니다.
- `<algorithm>` 헤더 파일에 정의되어 있습니다.
- `reverse(first, last)` 형태로 사용되며, `first`부터 `last`까지의 범위를 뒤집습니다.
- 이 함수는 입력된 범위의 요소들의 순서를 역순으로 변경합니다.
예시:
#include <algorithm>
#include <iostream>
using namespace std;
int main() {
string str = "Hello";
reverse(str.begin(), str.end());
cout << str; // 출력 결과: "olleH"
return 0;
}
2. `stoi` 함수:
- `stoi` 함수는 문자열을 정수로 변환합니다.
- `<string>` 헤더 파일에 정의되어 있습니다.
- `stoi(str, pos, base)` 형태로 사용되며, `str`을 정수로 변환합니다. `pos`는 변환된 마지막 문자의 위치를 나타내며, `base`는 진법을 나타냅니다 (기본값은 10입니다).
예시:
#include <iostream>
#include <string>
using namespace std;
int main() {
string str = "123";
int num = stoi(str);
cout << num; // 출력 결과: 123
return 0;
}
이 함수들은 각각의 역할에 따라 유용하게 사용됩니다. `reverse`는 컨테이너의 순서를 뒤집는 데에, `stoi`는 문자열을 정수로 변환하는 데에 사용됩니다.
반응형