数据结构与算法B代码编写作业,字符串插入,解题报告&AC代码
来源:互联网 发布:吉视传媒网络宽带连接 编辑:程序博客网 时间:2024/06/06 15:54
唔,这道题…还是比较简单的=_____=
遍历第一个字符串找出最大值,将第二个串插进去,把后面的补齐,好啦!
具体算法看AC代码吧…好久没写代码了比较丑……
/*ID: Moien_PodienePROG: STRINGLANG: C++*/#include <iostream>#include <string.h>using namespace std;int main(){ int i, j; int maxascii, maxloc, buflen; int len_str, len_substr; char str[32], substr[16]; char str_buf[32]; while(cin >> str >> substr) { maxascii = 0; buflen = 0; len_str = strlen(str); len_substr = strlen(substr); for(i = 0; i < len_str; i++) { if(str[i] > maxascii) { maxascii = str[i]; maxloc = i; } } for(i = maxloc + 1; i <= len_str; i++) { str_buf[i - maxloc - 1] = str[i]; buflen++; } for(i = maxloc + 1; i < maxloc + len_substr + 1; i++) { str[i] = substr[i - maxloc - 1]; } for(i = maxloc + len_substr + 1; i < maxloc + len_substr + 1 + buflen; i++) { str[i] = str_buf[i - maxloc - len_substr - 1]; } str[maxloc + len_substr + 1 + buflen] = 0; cout << str << endl; }}
郑脑斯告诉了我一个机智的方法…只用找出ASCII最大值,然后输出之前的,再输出插入的串,再输出后面的就行了……
代码如下:
#include <iostream>#include <string.h>using namespace std;int main(){ int i, j; int maxascii, maxloc; int len_str, len_substr; char str[32], substr[16]; char str_buf[32]; while(cin >> str >> substr) { maxascii = 0; len_str = strlen(str); len_substr = strlen(substr); for(i = 0; i < len_str; i++) { if(str[i] > maxascii) { maxascii = str[i]; maxloc = i; } } for(i = 0; i <= maxloc; i++) { cout << str[i]; } for(i = 0; i < len_substr; i++) { cout << substr[i]; } for(i = maxloc + 1; i < len_str; i++) { cout << str[i]; } cout << endl; }}
两种方法数据对比如下:
嗯…代码短了一点……
最后,惯例君又来了…原题如下:
描述 有两个字符串str和substr,str的字符个数不超过10,substr的字符个数为3。(字符个数不包括字符串结尾处的'\0'。)将substr插入到str中ASCII码最大的那个字符后面,若有多个最大则只考虑第一个。输入 输入包括若干行,每一行为一组测试数据,格式为 str substr输出 对于每一组测试数据,输出插入之后的字符串。样例输入 abcab eee 12343 555样例输出 abceeeab 12345553
- 数据结构与算法B代码编写作业,字符串插入,解题报告&AC代码
- 数据结构与算法B代码编写作业,位查询,解题报告&AC代码
- 数据结构与算法B代码编写作业,栈的基本操作,解题报告&AC代码
- 数据结构与算法B代码编写作业,stack or queue,解题报告&AC代码
- 数据结构与算法B代码编写作业,Huffman编码树,解题报告&AC代码
- 数据结构与算法B代码编写作业,电话号码,解题报告&AC代码
- 数据结构与算法B代码编写作业,树的转换,解题报告&AC代码
- 数据结构与算法B代码编写作业,由中根序列和后根序列重建二叉树,解题报告&AC代码
- 数据结构与算法B代码编写作业,表达式·表达式树·表达式求值,AC代码&注释
- OpenJudge 2745:显示器 解题报告&AC代码
- 趣味算法实习:踩气球第二周-《一道很简单的题目》解题报告&AC代码
- 程序设计实习踩气球第八周《勇敢与鲁莽》解题报告&AC代码
- [Hnoi2010]Matrix 矩阵解题报告及AC代码
- 程设第二轮练习:垂直直方图 解题报告&AC代码
- POJ-1006 生理周期(Biorhythms) 解题报告&AC代码
- OpenJudge 4043:GPA排名系统 解题报告&AC代码
- OpenJudge 4030:统计单词数 解题报告&AC代码
- USACO Training Section 1.2 Transformations 解题报告&AC代码
- nginx location常用语法
- UIApplication sharedApplication详细解释-IOS
- jquery 查询元素技巧
- Google中国2014校园招聘笔试Round A China New Grad Test Problem B. Rational Number Tree
- dwr框架报SecurityException异常的一个可能原因:类加载问题
- 数据结构与算法B代码编写作业,字符串插入,解题报告&AC代码
- poj 1244 Slots of Fun
- Android开发中设置无标题
- iOS Objective-C 與 PHP DES 加解密演算法實作
- 一个做得很好的电子产品测评类网站:Zealer
- c——文件读写
- 跟我学ROS
- Android——自动完成输入框提示功能的菜单_AutoCompleteTextView
- error while loading shared libraries: xxx.so.x"错误的原因和解决办法