词组缩写
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 14681 Accepted Submission(s): 4763
Problem Description
定义:一个词组中每个单词的首字母的大写组合称为该词组的缩写。 比如,C语言里常用的EOF就是end of file的缩写。
Input
输入的第一行是一个整数T,表示一共有T组测试数据; 接下来有T行,每组测试数据占一行,每行有一个词组,每个词组由一个或多个单词组成;每组的单词个数不超过10个,每个单词有一个或多个大写或小写字母组成; 单词长度不超过10,由一个或多个空格分隔这些单词。
Output
请为每组测试数据输出规定的缩写,每组输出占一行。
Sample Input
1
end of file
Sample Output
EOF
Author
lemon
Source
Recommend
yifenfei
注意这道题目要考虑特殊情况 如果中间有几个空格怎么办 以及最开始为空格的情况
这份代码还有一点问题 就是第一次输入前面有空格的情况时,什么都不会输出
#include<iostream> #include<cstring> #include<queue> #include<cstdio> #include<algorithm> #include<cmath> using namespace std; #define maxn 1010 #define INF 99999999 char str[1010]; struct node { char name[15]; }a[105]; int main() { int t; while(~scanf("%d%*c",&t)) { gets(str); int flag = 0,k = 0; for(int i=0;i<strlen(str);i++) { if(str[i]==' '&&str[i+1]!=' ') { int j,p; for(j=flag,p=0;j<i;j++,p++) a[k].name[p] = str[j]; a[k].name[p] = '