HDU 1062 Text Reverse

字符串反转:每个单词反转,然后输出。

PE做法:所有单词反转并写入另一个数组中,附代码

 1 #include <iostream>
 2 #include <cstdio>
 3 #include <cstring>
 4 using namespace std;
 5 const int N=1005;
 6 int main() {
 7     char ol[N],no[N];
 8     int n;
 9    // freopen("C:\\CODE\\in.txt", "r", stdin);
10    // freopen("C:\\CODE\\out.txt","w",stdout);
11     scanf("%d",&n);
12     getchar();
13     while(n--) {
14
15         gets(ol);
16
17         for(int i=0,j=0; i<=strlen(ol); i++) {
18             if(ol[i+1]==‘ ‘||i+1==strlen(ol)) {
19
20                 no[i+1]=ol[i+1];
21                 for(int k1=i,k2=j; k1>=j; k2++,k1--) {
22                     no[k1]=ol[k2];
23                 }
24                 j=i+2;
25
26             }
27         }
28         puts(no);
29         memset(no,0,sizeof(no));
30     }
31
32
33     return 0;
34 }

AC做法:每个单词写入数组并在空格时输出,考虑结束的情况,附代码

 1 #include <iostream>
 2 #include <cstdio>
 3 #include <cstring>
 4 using namespace std;
 5 const int N=1005;
 6 int main() {
 7     char ol[N],no[N];
 8     int n;
 9     freopen("C:\\CODE\\in.txt", "r", stdin);
10     //freopen("C:\\CODE\\out.txt","w",stdout);
11     scanf("%d",&n);
12     getchar();
13     while(n--) {
14
15         gets(ol);
16
17         for(int i=0,j=0; i<=strlen(ol); i++) {
18             if(i == strlen(ol)){
19                 while(j){
20                     j--;
21                     printf("%c",no[j]);
22                 }
23             }
24             if(ol[i]!=‘ ‘){
25                 no[j]=ol[i];
26                 j++;
27             }
28             else{
29                 while(j){
30                     j--;
31                     printf("%c",no[j]);
32                 }
33                 printf(" ");
34             }
35
36         }
37         putchar(‘\n‘);
38
39     }
40
41
42     return 0;
43 }
时间: 2024-10-16 09:38:57

HDU 1062 Text Reverse的相关文章

hdu 1062 Text Reverse 字符串反转

Text Reverse Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 18240    Accepted Submission(s): 6900 Problem Description Ignatius likes to write words in reverse way. Given a single line of text

HDU 1062.Text Reverse【栈或数组或字符串流】【字符处理】【8月30】

Text Reverse Problem Description 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. Input The input contains several test cases. The first lin

HDU 1062 Text Reverse(水题,字符串处理)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1062 解题报告:注意一行的末尾可能是空格,还有记得getchar()吃回车符. 1 #include<cstdio> 2 #include<string.h> 3 #include<iostream> 4 #include<algorithm> 5 #include<cmath> 6 #include<deque> 7 #include&

HDOJ/HDU 1062 Text Reverse(字符串翻转~)

Problem Description 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. Input The input contains several test cases. The first line of the inpu

题解报告:hdu 1062 Text Reverse

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1062 解题思路:问题求解的是单词的反转... AC代码: 1 #include<bits/stdc++.h> 2 using namespace std; 3 char a[1005]; 4 int main() 5 { 6 int T,len,x,y; 7 while(cin>>T){ 8 getchar();//吃掉回车符 9 while(T--){ 10 gets(a); 11

[hdu 1062] Text Reverse | STL-stack

原题 题目大意: t组数据,每组为一行,遇到空格时讲前面的单词反转输出. 题解: 显然的栈题,遇到空格时将当前栈输出清空即可 #include<cstdio> #include<stack> #include<cstring> using namespace std; int t,l; char s[1010]; stack <char> stk; int main() { scanf("%d",&t); getchar(); w

【HDOJ】1062 Text Reverse

#include<iostream>#include<string>using namespace std;void main(){ int T; while (cin>>T) { getchar(); for (int i = 0; i < T; i++) { string str; getline(cin, str); int end = 0,top = 0; while (str[end] != '\0') { if (str[end]==' ') { fo

Text Reverse(杭电oj1062)

Text Reverse Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 17702    Accepted Submission(s): 6717 Problem Description Ignatius likes to write words in reverse way. Given a single line of text

stack的使用-Hdu 1062

Text Reverse Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 51495    Accepted Submission(s): 19692 Problem Description Ignatius likes to write words in reverse way. Given a single line of text