描述
给定 tt 组询问,每次给出一个长度为 nn 的带空格的字符串 ss ,请你去掉空格之后,将其倒置,然后输出。
输入描述:
第一行有一个整数 t ( 1≤t≤105 )t ( 1≤t≤105 ) 。
随后 tt 组数据。
每组的第一行有一个整数 n ( 1≤n≤105 )n ( 1≤n≤105 ) 。
每组的第二行有一个字符串 ss,仅包含小写英文字符和空格,保证字符串首尾都不是空格。
保证 ∑n≤105∑n≤105 。
输出描述:
输出 tt 行,每行一个字符串,代表倒置后的字符串 ss 。
示例1
输入:
3 9 one space 11 two spaces 14 three spaces
输出:
ecapseno secapsowt secapseerht
答案
int main() {
int t;
cin >> t; // 读取测试用例的数量 t
while (t--) {
int n;
cin >> n; // 读取字符串的长度 n
string s;
cin.ignore(); // 忽略掉换行符
getline(cin, s); // 读取带有空格的字符串 s
// 去掉字符串中的空格
string noSpaceStr;
for (char ch : s) {
if (ch != ' ') {
noSpaceStr += ch;
}
}
// 反转字符串
reverse(noSpaceStr.begin(), noSpaceStr.end());
// 输出倒置后的字符串
cout << noSpaceStr << endl;
}
return 0;
}