2 条题解
-
0
📝 题目大意
给定一个由大写英文字母组成的字符串 ,将 的每个字符用空格分隔后按顺序输出,末尾不输出多余空格。
💡 解题思路
- 题目分析: 长度 ,全为大写字母,数据范围极小,直接模拟即可。
- 算法推导:遍历字符串 的每个字符,对于下标 ,若 则先输出一个空格,再输出 。这样第一个字符前不会输出空格,最后一个字符后也不会输出多余空格。
- 边界与细节:唯一需要注意的是最后一个字符后面不能有空格,标准代码通过"先输出空格再输出字符(除第一个字符外)"的方式自然规避了该问题。
⏱️ 复杂度分析
- 时间复杂度:,遍历字符串一次。
- 空间复杂度:,存储输入字符串。
💻 标准代码 (C++)
#include <iostream> #include <string> using namespace std; int main() { string S; cin >> S; for (int i = 0; i < S.length(); i++) { if (i > 0) cout << " "; // 除第一个字符外,每个字符前输出一个空格 cout << S[i]; // 输出当前字符 } cout << endl; // 输出换行 return 0; }
- 1
信息
- ID
- 748
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 10
- 标签
- (无)
- 递交数
- 2
- 已通过
- 2
- 上传者