HDU-1062-Text Reverse(细节题)
2016-08-16 12:04
453 查看
题目链接:点击打开链接
Total Submission(s): 26663 Accepted Submission(s): 10393
[align=left]Problem Description[/align]
Ignatius likes to write words in reverse way. Given a single line of text which is written by Ignatius, you should reverse all the words and then output them.
[align=left]Input[/align]
The input contains several test cases. The first line of the input is a single integer T which is the number of test cases. T test cases follow.
Each test case contains a single line with several words. There will be at most 1000 characters in a line.
[align=left]Output[/align]
For each test case, you should output the text which is processed.
[align=left]Sample Input[/align]
3
olleh !dlrow
m'I morf .udh
I ekil .mca
[align=left]Sample Output[/align]
hello world!
I'm from hdu.
I like acm.
Hint
Remember to use getchar() to read '\n' after the interger T, then you may use gets() to read a line and process it.
虽然是道水题,但是有好多需要注意的地方,就贴一下
#include<cstdio>
#include<cstring>
#include<iostream>
using namespace std;
char str[1010];
int main()
{
int t;
scanf("%d",&t);
getchar();
while(t--)
{
gets(str);
int len=strlen(str);
int start=0;
bool flag=0;
for(int i=0;i<len;i++)
{
if(str[i]==' ')
{
if(flag) printf(" ");
for(int k=i-1;k>=start;k--)
printf("%c",str[k]);
start=i+1;
flag=1;
}
if(i==len-1)
{
printf(" ");
for(int k=i;k>=start;k--)
printf("%c",str[k]);
}
}
puts("");
/*
for(int i=0;i<len;i++)
{
if(str[i]==' '||i==len-1) 这样写是 PE的,举个特例:a_b_ 这个程序的答案是:a__b,正确答案应该是:a_b
{
if(flag) printf(" ");
for(int k=(i==len-1?i:i-1);k>=start;k--)
printf("%c",str[k]);
start=i+1;
flag=1;
}
}
puts("");*/
}
return 0;
}
Text Reverse
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 26663 Accepted Submission(s): 10393
[align=left]Problem Description[/align]
Ignatius likes to write words in reverse way. Given a single line of text which is written by Ignatius, you should reverse all the words and then output them.
[align=left]Input[/align]
The input contains several test cases. The first line of the input is a single integer T which is the number of test cases. T test cases follow.
Each test case contains a single line with several words. There will be at most 1000 characters in a line.
[align=left]Output[/align]
For each test case, you should output the text which is processed.
[align=left]Sample Input[/align]
3
olleh !dlrow
m'I morf .udh
I ekil .mca
[align=left]Sample Output[/align]
hello world!
I'm from hdu.
I like acm.
Hint
Remember to use getchar() to read '\n' after the interger T, then you may use gets() to read a line and process it.
虽然是道水题,但是有好多需要注意的地方,就贴一下
#include<cstdio>
#include<cstring>
#include<iostream>
using namespace std;
char str[1010];
int main()
{
int t;
scanf("%d",&t);
getchar();
while(t--)
{
gets(str);
int len=strlen(str);
int start=0;
bool flag=0;
for(int i=0;i<len;i++)
{
if(str[i]==' ')
{
if(flag) printf(" ");
for(int k=i-1;k>=start;k--)
printf("%c",str[k]);
start=i+1;
flag=1;
}
if(i==len-1)
{
printf(" ");
for(int k=i;k>=start;k--)
printf("%c",str[k]);
}
}
puts("");
/*
for(int i=0;i<len;i++)
{
if(str[i]==' '||i==len-1) 这样写是 PE的,举个特例:a_b_ 这个程序的答案是:a__b,正确答案应该是:a_b
{
if(flag) printf(" ");
for(int k=(i==len-1?i:i-1);k>=start;k--)
printf("%c",str[k]);
start=i+1;
flag=1;
}
}
puts("");*/
}
return 0;
}
相关文章推荐
- HDU 1062 Text Reverse(字符串处理)
- HDU 1062 Text Reverse (水)
- hdu-1062 Text Reverse
- HDU1062 Text Reverse
- hdu 1062 Text Reverse
- HDU——1062 Text Reverse
- hdu 1062 Text Reverse
- hdu 1062 Text Reverse
- hdu 1062 Text Reverse
- HDU 1062 Text Reverse
- hdu 1062 Text Reverse
- HDU 1062 Text Reverse(简单模拟)
- HDU 1062 Text Reverse(水题,字符串处理)
- hdu_1062:Text Reverse
- HDU 1062 Text Reverse
- HDU 1062 Text Reverse
- HDU 1062 Text Reverse【栈 翻转操作】
- hdu 1062 Text Reverse 字符串反转
- hdu 1062 Text Reverse 字符串
- hdu 1062 Text Reverse