14. 句子缩写
时间限制:1.000S 空间限制:32MB
题目描述
输出一个词组中每个单词的首字母的大写组合。
输入描述
输入的第一行是一个整数n,表示一共有n组测试数据。(输入只有一个n,没有多组n的输入) 接下来有n行,每组测试数据占一行,每行有一个词组,每个词组由一个或多个单词组成;每组的单词个数不超过10个,每个单词有一个或多个大写或小写字母组成; 单词长度不超过10,由一个或多个空格分隔这些单词。
输出描述
请为每组测试数据输出规定的缩写,每组输出占一行。
输入示例
1 ad dfa fgs
输出示例
ADF
提示信息
注意:单词之间可能有多个空格
解法一(模拟)
思路分析:
- 根据题意处理输入输出即可
实现代码如下:
java
public class k_14_SentenceAbbreviations {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
// 读取测试数据组数
String number = in.nextLine();
int n = Integer.parseInt(number);
while (n-- > 0) {
StringBuilder result = new StringBuilder();
// 读取一行输入
String str = in.nextLine();
// System.out.println(str);
// 通过空格进行切割
String[] words = str.split("\\s+");
// 测试切割效果
// System.out.println(Arrays.deepToString(words));
// 遍历单词
for (String word : words) {
result.append(word.charAt(0));
}
System.out.println(result.toString().toUpperCase());
}
}
}
运行结果如下:
运行时间: 362ms 消耗内存: 12868kb
复杂度分析:
- 时间复杂度:
- 空间复杂度: