九度oj 题目1525:子串逆序打印
题目1525:子串逆序打印
时间限制:1 秒
内存限制:128 兆
特殊判题:否
提交:3124
解决:530
- 题目描述:
-
小明手中有很多字符串卡片,每个字符串中都包含有多个连续的空格,而且这些卡片在印刷的过程中将字符串的每个子串都打印反了,现在麻烦你帮小明将这些字符串中的子串修正过来,同时为了使卡片美观,压缩其中的连续空格为1个。
- 输入:
-
输入包含多个测试用例,每个测试用例的第一行是一个正整数 n,1=<n<=100000,代表卡片上字符串的长度。第二行输入长度为n的字符串(字符串仅包含小写字母和空格)。当n为0时,代表输入结束。
- 输出:
-
对应每个测试用例,请按照要求输出修正过的字符串。
- 样例输入:
-
3
abc
13
abc efg hij
- 样例输出:
-
cba
cba gfe jih
分析:本题遇到了比较多的问题,读入一行后,我一开始是判断abc是个串之后直接将其逆序一个一个字母输出,然后
直接输出一个空格。。。试了很久案例未能全部ac,原因是:一开始没有看懂题目那句话:压缩其中的连续空格为1个。我自己编码的意思
是逆序输出一个子串后空一格,实际上不是这个意思,题意是说有多个空格则只输出一个空格,子串逆序输出,比如一开始连续三个
空格,则首先要输出一个空格。。就这个意思。
总结:题意要弄明白,需求很重要,否则很浪费时间。以下是代码:#include <iostream>
#include <cstdio>
#include <vector>
#include <string>
using namespace std;
int main(){
int n, i, j, flag;
vector<string> v;
string s, str;
while(cin >> n){
if(n == )
break;
v.clear();
getchar();
getline(cin, s);
for(i = ; i < n;){
flag = ;
str = "";
while(s[i] != ' ' && i < n){
str += s[i];
i++;
}
while(str == "" && s[i] == ' ' && i < n){
flag = ;
i++;
}
if(flag == )
v.push_back(str);
else{
str += ' ';
v.push_back(str);
}
}
for(j = v[].length() - ; j >= ; j--)
cout << v[][j];
for(i = ; i < v.size(); i++){
for(j = v[i].length() - ; j >= ; j--)
cout << v[i][j];
}
cout << endl;
}
//system("pause");
return ;
}
九度oj 题目1525:子串逆序打印的更多相关文章
- 九度oj 题目1058:反序输出
题目1058:反序输出 时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:9677 解决:3495 题目描述: 输入任意4个字符(如:abcd), 并按反序输出(如:dcba) 输入: 题目可 ...
- 九度OJ 1525 子串逆序打印 -- 2012年Google校园招聘笔试题目
题目地址:http://ac.jobdu.com/problem.php?pid=1525 题目描述: 小明手中有很多字符串卡片,每个字符串中都包含有多个连续的空格,而且这些卡片在印刷的过程中将字符串 ...
- 九度oj 1525 子串逆序打印
原题链接:http://ac.jobdu.com/problem.php?pid=1525 字符串简单题,注意开有结尾有空格的情况否则pe or wa #include<algorithm> ...
- 九度OJ 题目1384:二维数组中的查找
/********************************* * 日期:2013-10-11 * 作者:SJF0115 * 题号: 九度OJ 题目1384:二维数组中的查找 * 来源:http ...
- hdu 1284 关于钱币兑换的一系列问题 九度oj 题目1408:吃豆机器人
钱币兑换问题 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Sub ...
- 九度oj题目&吉大考研11年机试题全解
九度oj题目(吉大考研11年机试题全解) 吉大考研机试2011年题目: 题目一(jobdu1105:字符串的反码). http://ac.jobdu.com/problem.php?pid=11 ...
- 九度oj 题目1007:奥运排序问题
九度oj 题目1007:奥运排序问题 恢复 题目描述: 按要求,给国家进行排名. 输入: 有多组数据. 第一行给出国家数N,要求排名的国家数M,国家号 ...
- 九度oj 题目1087:约数的个数
题目链接:http://ac.jobdu.com/problem.php?pid=1087 题目描述: 输入n个整数,依次输出每个数的约数的个数 输入: 输入的第一行为N,即数组的个数(N<=1 ...
- 九度OJ题目1105:字符串的反码
tips:scanf,cin输入字符串遇到空格就停止,所以想输入一行字符并保留最后的"\0"还是用gets()函数比较好,九度OJ真操蛋,true?没有这个关键字,还是用1吧,还是 ...
随机推荐
- [SHOI2002]取石子游戏之三
Wythoff's Game,详解请见浅谈算法--博弈论中的例6 /*program from Wolfycz*/ #include<cmath> #include<cstdio&g ...
- SimpleDateForma类
package Format_daqo; import java.text.SimpleDateFormat; import java.util.Date; public class SimpleDa ...
- libtool版本过新的问题
安装过程中出现: libtool: Version mismatch error. This is libtool 2.4.2, but the libtool: definition of th ...
- solr之~模糊查询【转】
solr之~模糊查询 有的时候,我们一开始不可能准确地知道搜索的关键字在 Solr 中查询出的结果是什么,因此,Solr 还提供了几种类型的模糊查询.模糊匹配会在索引中对关键字进行非精确匹配.例如,有 ...
- Rxjava2的学习与总结
博客地址:https://luhaoaimama1.github.io/2017/07/31/rxjava/
- 安卓(Android )软键盘的控制(显示和隐藏)
Activity 启动时软键盘默认状态 在清单文件(manifest .xml)中可以通过在 Activity 标签中增加属性控制软键盘的默认状态: android:windowSoftInputMo ...
- spark shuffle:分区原理及相关的疑问
一.分区原理 1.为什么要分区?(这个借用别人的一段话来阐述.) 为了减少网络传输,需要增加cpu计算负载.数据分区,在分布式集群里,网络通信的代价很大,减少网络传输可以极大提升性能.mapreduc ...
- iOS Programming Editing UITableView
iOS Programming Editing UITableView 1.1 Editing mode UITableView has an editing property, and when ...
- pythno学习小结-替换python字典中的key值
源: d={'a':1,'b':2,'c':3} 目标:key:'b'替换为'e' d={'a':1,'e':2,'c':3} 方法: d['e']=d.pop('b')
- leetcode_378. Kth Smallest Element in a Sorted Matrix_堆的应用
Given a n x n matrix where each of the rows and columns are sorted in ascending order, find the kth ...