杭电ACM 2025:查找最大元素
来源:互联网 发布:西部数码域名备案流程 编辑:程序博客网 时间:2024/05/12 03:10
原创作品 转载请注明出处http://blog.csdn.net/always2015/article/details/45508527
这一道题刚开始看起来是有点麻烦的。但是做下去就会发现比想象的简单一点,我在程序中用到了一个在字符串中插入另一个字符串函数insert();关于insert的用法下面通过一个例子就可以了解:
#include <iostream> #include <string> using std::cout; using std::endl; using std::string; int main(void){ string str1="We can insert a string"; string str2="a str into "; //在字符串指定位置前面插入指定字符串 cout <<str1.insert(14,str2)<<endl; //在字符串指定位置前面插入指定字符串的子串(从指定索引开始的指定个数的字符) cout <<str1.insert(14,str2,2,9)<<endl; //插入指定字符串的前n个字符 cout <<str1.insert(14,"test hello",5)<<endl; //插入n个相同字符到字符串中 cout <<str1.insert(14,6,'*')<<endl; //替换指定索引开始的指定长度的子串 cout <<str1.replace(3,3,"may")<<endl; //用给定字符串的指定子串来进行替换 //如下,实际上使用的是could来进行替换 cout <<str1.replace(3,3,"can could",4,5)<<endl; //使用给定字符串的前n个字符来进行替换:can cout <<str1.replace(3,5,"can could",3)<<endl; //使用指定个数的重复字符来进行替换 cout <<str1.replace(3,3,5,'*')<<endl; string word="We"; size_t index=str1.find(word); if(index!=string::npos) //删除指定索引开始的指定长度的字符 cout <<str1.erase(index,word.length())<<endl; return 0; }
很简单吧,具体含义在注释里面有。下面我就给出我的AC代码,注释在代码里写的很详细,特别是需要注意的地方。
#include <iostream>#include<string>using namespace std;int main(void){ string input_str,insert_str="(max)"; int lenght; char max_char; while(cin>>input_str) { lenght=input_str.size(); max_char=input_str[0]; //求出字符串中的最大字符 for(int i=1; i<lenght; i++) { if(input_str[i]>max_char) { max_char=input_str[i]; } } /*注意:在这里j的范围必须写成j<input_str.size(),不能用lenght代替。 因为下面插入字符串后,整个字符串长度一直在变化 */ for(int j=0; j<input_str.size(); j++) { if(input_str[j]==max_char) { input_str.insert(j+1,insert_str); //插入的(max)占据了5个位置,所以j在扫描时候直接跳过 j+=5; } } cout << input_str << endl; } return 0;}
0 0
- 杭电ACM 2025 查找最大元素
- 杭电ACM 2025 查找最大元素
- 杭电ACM 2025 查找最大元素
- 杭电ACM 2025:查找最大元素
- 杭电 acm 2025(查找最大元素)
- 杭电acm P2025查找最大元素
- 杭电2025 查找最大元素
- 杭电2025 查找最大元素
- 杭电 2025 查找最大元素
- 【杭电】[2025]查找最大元素
- 杭电 2025 ( 查找最大元素 ) java
- acm--查找最大元素
- 【杭电】2025 查找最大元素(字符串有毒系列!!)
- 杭电ACM2025查找最大元素----20140729
- 杭电acm2025查找最大元素
- 杭电OJ2025-查找最大元素
- 【杭电oj2025】查找最大元素
- 杭电ACM2025:查找最大元素
- SQL 聚合 连乘
- hdu 5091 Beam Cannon 离散化+扫描线+线段树
- Android Studio导入第三方类库的方法
- 链表常用操作及面试题
- Scala 函数特性编程实践(一)
- 杭电ACM 2025:查找最大元素
- 「HD_ACM」IBM Minus One
- int a = (int)(char)(byte)-1;
- AFNetworking使用
- Unity for Absolute Beginners(四)
- Creating SQL Adapter in IBM Worklight
- linux常用命令
- Socket层实现系列 — connect()的实现
- 腾讯微信技术总监周颢:一亿用户增长背后的架构秘密