ACM题目————STL练习之字符串替换

描述

编写一个程序实现将字符串中的所有"you"替换成"we"

输入
输入包含多行数据

每行数据是一个字符串,长度不超过1000 
数据以EOF结束

输出
对于输入的每一行,输出替换后的字符串
样例输入
you are what you do
样例输出
    we are what we do
STL string 练手题:
熟悉 find 函数,以及 replace 函数
//Asimple
#include <iostream>
#include <string>

using namespace std;
string str, s1="you", s2="we";

int main()
{
    int pos;
    while( getline(cin,str) )
    {
        pos = str.find(s1,0);
        while( pos != string::npos )
        {
            str.replace(pos,3,s2);
            pos = str.find(s1,pos+1);
        }
        cout << str << endl ;
    }
    return 0;
}
时间: 2024-11-05 07:54:26

ACM题目————STL练习之字符串替换的相关文章

ACM题目————STL练习之众数问题

描述 所谓众数,就是对于给定的含有N个元素的多重集合,每个元素在S中出现次数最多的成为该元素的重数, 多重集合S重的重数最大的元素成为众数.例如:S={1,2,2,2,3,5},则多重集S的众数是2,其重数为3. 现在你的任务是:对于给定的由m个自然数组成的多重集S,计算出S的众数及其重数. 输入 第一行为n,表示测试数据组数.(n<30)每组测试的第一行是一个整数m,表示多重集S中元素的个数为m接下来的一行中给出m(m<100)个不大于10万的自然数(不会出现不同元素出现的次数相同的情况,如

ACM题目————STL + 全排列

今天碰到一个函数,感觉挺好用的,全排列函数 next_permutation! 他可以遍历全排列哦! 话不多说,直接上题. 描述 小明十分聪明,而且十分擅长排列计算.比如给小明一个数字5,他能立刻给出1-5按字典序的全排列,如果你想为难他,在这5个数字中选出几个数字让他继续全排列,那么你就错了,他同样的很擅长.现在需要你写一个程序来验证擅长排列的小明到底对不对. 输入 第一行输入整数N(1<N<10)表示多少组测试数据, 每组测试数据第一行两个整数 n m (1<n<9,0<

面试题【002字符串替换空格】精妙解法

题目描述 请实现一个函数,将一个字符串中的每个空格替换成“%20”.例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy. 解题思路 老实说,看到这个题目想到的就是字符串替换,但是面试题肯定不是这么简单的,那么怎么在原字符串上进行高效的替换呢?我们的字符串替换,主要的消耗是在移位上,每遇到一个空格,后面的字符串就往后移位,那么之前的移位都没有作用了.我们知道字符串的长度,知道替换字符串的长度,如果还知道空格的多少,那么这个字符串的长度就知道了.知道长

NYOJ 113 字符串替换(C++STL解法)

字符串替换 时间限制:3000 ms  |            内存限制:65535 KB 难度:2 描述 编写一个程序实现将字符串中的所有"you"替换成"we" 输入 输入包含多行数据 每行数据是一个字符串,长度不超过1000 数据以EOF结束 输出 对于输入的每一行,输出替换后的字符串 样例输入 you are what you do 样例输出 we are what we do 也是做过很多次的水题了,最近学STL,利用这题熟悉find(),replace

华为机试题目---字符串替换

题目要求:输入一个字符串,然后在输入一个整数,就是替换字符串的次数,然后依次输入需要替换的字符串-- 例如: 输入:abcdefg 3 a->qwe b->s fg->abc 输出:qwescdeabc //字符串替换 #include<iostream> #include<vector> #include<string> #define max 100 using namespace std; void change(char str[],int c

Sdut2411 Pixel density 山东省第三届ACM省赛(输入输出字符串处理)

本文出处:http://blog.csdn.net/svitter 原题:http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=2411 题意:给你一个串,让你依据那个串来输出ppi.坑特别多.ppi的计算方法是dp / inches; dp = sqrt(wp*wp + hp * hp); 现在我来说说这个题目有多坑: 给你的串的格式是这样: name + inches+ "inches"

杭电ACM题目分类

杭电ACM题目分类 基础题:1000.1001.1004.1005.1008.1012.1013.1014.1017.1019.1021.1028. 1029.1032.1037.1040.1048.1056.1058.1061.1070.1076.1089.1090.1091.1092. 1093.1094.1095.1096.1097.1098.1106.1108.1157.1163.1164.1170.1194.1196. 1197.1201.1202.1205.1219.1234.123

我的ACM题目测试数据产生方法

到网上搜了下ACM题目产生方法,却没有搜索到有用的资料,那只能自己钻研一下了,下面把钻研出的结果给大家分享一下. 我们知道,ACM的题目对算法要求很高,OJ上而如何评判一个算法的复杂度靠的是测试数据.一般地,题目需要数据量比较大,不可能人工地去产生,只能借助计算机产生测试数据,而为了避免数据出现规律性,那应该尽量让数据随机.接下来,我们就研究最一般的问题,如何产生int,long long ,大整数,以及字符串? 我们知道,C语言提供了我们一个随机函数rand(),可惜的是它只能产生(1~2^1

练习:将下面的alex字符串替换成SB

题目:将下面的alex字符串替换成SB msg = 'hello alex' # 定义变量 msg1 = msg.replace('alex','SB') # 将alex字符串替换成SB print(type(msg1),msg1) 输出结果: <class 'str'> hello SB