#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
int main() {
string s;
getline(cin, s);
/*size_t 是一个无符号整数类型(unsigned integer type),通常用于表示内存中对象的大小或数组的索引。
它是标准库中定义的类型,具体实现依赖于编译器和平台。
在 C++ 中,size_t 定义在头文件 <cstddef> 中(C 语言中定义在 <stddef.h> 中)。
size_t 的用途
表示大小:
size_t 通常用于表示对象的大小(例如,sizeof 运算符的返回值类型就是 size_t)。
例如:size_t size = sizeof(int); // size 是 int 类型的大小
表示索引:
size_t 常用于数组或容器的索引,因为它可以表示足够大的范围来覆盖所有可能的索引。
例如:
std::vector<int> vec = {1, 2, 3, 4, 5};
for (size_t i = 0; i < vec.size(); i++) {
std::cout << vec[i] << " ";
}
标准库函数的返回值:
许多标准库函数(如 std::string::find、std::vector::size 等)返回 size_t 类型的值。
例如:
std::string str = "hello";
size_t pos = str.find('e'); // pos 是字符 'e' 在字符串中的位置
*/
// 去掉开头和结尾的空格
size_t start = s.find_first_not_of(' ');
size_t end = s.find_last_not_of(' ');
if (start == string::npos || end == string::npos) {
// 如果字符串全是空格
cout << "" << endl;
return 0;
}
s = s.substr(start, end - start + 1);
// 反转字符串
reverse(s.begin(), s.end());
// 输出结果
cout << s << endl;
return 0;
}