九度OJ 1525 子串逆序打印 -- 2012年Google校园招聘笔试题目
2014-02-15 11:30
537 查看
题目地址:http://ac.jobdu.com/problem.php?pid=1525
题目描述:
小明手中有很多字符串卡片,每个字符串中都包含有多个连续的空格,而且这些卡片在印刷的过程中将字符串的每个子串都打印反了,现在麻烦你帮小明将这些字符串中的子串修正过来,同时为了使卡片美观,压缩其中的连续空格为1个。
输入:
输入包含多个测试用例,每个测试用例的第一行是一个正整数 n,1=<n<=100000,代表卡片上字符串的长度。第二行输入长度为n的字符串(字符串仅包含小写字母和空格)。当n为0时,代表输入结束。
输出:
对应每个测试用例,请按照要求输出修正过的字符串。
样例输入:
样例输出:
来源:2012年Google校园招聘笔试题目
题目描述:
小明手中有很多字符串卡片,每个字符串中都包含有多个连续的空格,而且这些卡片在印刷的过程中将字符串的每个子串都打印反了,现在麻烦你帮小明将这些字符串中的子串修正过来,同时为了使卡片美观,压缩其中的连续空格为1个。
输入:
输入包含多个测试用例,每个测试用例的第一行是一个正整数 n,1=<n<=100000,代表卡片上字符串的长度。第二行输入长度为n的字符串(字符串仅包含小写字母和空格)。当n为0时,代表输入结束。
输出:
对应每个测试用例,请按照要求输出修正过的字符串。
样例输入:
3 abc 13 abc efg hij
样例输出:
cba cba gfe jih
来源:2012年Google校园招聘笔试题目
#include <stdio.h> #define MAX 100001 int Delete_Blank (char str[], int n){ int i, j; int flag; int cnt; cnt = 0; i=0; j=0; while (i < n){ str[j] = str[i]; if (str[i] == ' '){ while (str[++i] == ' ') continue; ++j; str[j] = str[i]; } else{ ++i; ++j; } } str[j] = '\0'; return j; } void Reverse (char str[], int start, int end){ char tmp; while (start < end){ tmp = str[start]; str[start] = str[end]; str[end] = tmp; ++start; --end; } } int main(void){ char str[MAX]; int n; int i; int start, end; while (scanf ("%d", &n) != EOF){ while (getchar () != '\n') continue; gets (str); n = Delete_Blank (str, n); for (i=0; i<n; ++i){ if (str[i] != ' '){ start = i; while (++i < n && str[i] != ' ') continue; end = i - 1; Reverse (str, start, end); } } puts (str); } return 0; }
相关文章推荐
- 九度OJ 1525 子串逆序打印 -- 2012年Google校园招聘笔试题目
- JD_题目1525:子串逆序打印(2012年Google校园招聘笔试题目)
- 题目1525:子串逆序打印-九度
- 九度题目1525:子串逆序打印
- 九度题目1526:朋友圈 小米2013年校园招聘笔试题 并查集
- 九度 1525:子串逆序打印
- 九度OJ—题目1525:子串逆序打印
- 题目1525:子串逆序打印
- AVL树(考研的同学需要注意其定义)的判定(某公司2012年校园招聘笔试题目)
- 打印前20个平凡数(某公司校园招聘笔试题目)
- 题目1525:子串逆序打印
- 九度OJ 1531 货币面值(网易游戏2013年校园招聘笔试题) -- 动态规划(01背包)
- AVL树(考研的同学需要注意其定义)的判定(某公司2012年校园招聘笔试题目)
- 2012年Google校园招聘笔试最后一题
- 奇虎360校园招聘2015笔试题目
- 【剑指Offer面试编程题】题目1511:从尾到头打印链表--九度OJ
- 微策略2012年校园招聘笔试题两道-动态规划和DFS练习
- (1.4.9.1)百度笔试:2011年校园招聘笔试题 C++类题目
- Google2012.9.24校园招聘会笔试题
- 2015校园招聘联通笔试的几个题目