- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
全国软件大赛决赛题目(附答案)
题1,高分值题(41分)
字符串分割:已知某文件中存在一些字符串及其对应的权值,现输入一个较长的字符串,找出各种匹配种类,并计算相应的权值和。
例如:(文件的内容)
a 5
aa 12
bc 9
bcd 21
cd 15
输入字符串:aaabc
相应的输出为:
a a a bc 24
a aa bc 26
aa a bc 26
///////////////////////////////////////////////////////////#include iostream
#include vector
#include iterator
#include string
#include iomanip
using namespace std;
int stringToCharVector(string str, vectorchar v);
void searchAll(const string souStr, vectorstring comStr, vectorstring resultStr,\
string:: iterator sou_sIt, vectorstring::iterator result_sIt);
int main()
{
string souStr = aaabc;
string comString[] = {a,aa, bc};
vectorstring comStr (comString+0, comString+3);
vectorstring resultStr(1, begin);
string::iterator sou_sIt = souStr.begin();
vectorstring::iterator result_sIt = resultStr.begin();
searchAll(souStr, comStr, resultStr, sou_sIt, result_sIt);
return 0;
}
/*******************************功能函数部分********************************/
int stringToCharVector(string str, vectorchar v)
{
string::iterator sIt = str.begin();
v.clear();
while( sIt != str.end())
{
v.push_back(*(sIt++));
}
return 0;
}
void searchAll(const string souStr, vectorstring comStr, vectorstring resultStr, \
string:: iterator sou_sIt, vectorstring::iterator result_sIt)
{
if(sou_sIt == souStr.end())
{
int sumPower = 0;
for(vectorstring::iterator result_begin_sIt = resultStr.begin(); \
result_begin_sIt result_sIt; result_begin_sIt++)
{
cout*result_begin_sIt ;
if(*result_begin_sIt == a)
sumPower += 5;
else if(*result_begin_sIt == aa)
sumPower += 12;
else if(*result_begin_sIt == bc)
sumPower += 9;
else if(*result_begin_sIt == bcd)
sumPower += 21;
else if(*result_begin_sIt == cd)
sumPower += 15;
}
coutsumPowerendl;
return;
}
for(vectorstring::iterator com_begin_sIt = comStr.begin(); com_begin_sIt comStr.end(); com_begin_sIt++ )
{
int comStringLenth = (*(com_begin_sIt)).size();
int souStringLastLenth = souStr.end() - sou_sIt;
您可能关注的文档
最近下载
- 领读经典-外国文学(1)(山东大学)中国大学MOOC慕课 章节测验期末考试客观题答案.docx VIP
- 《电机与拖动基础》课件(共十一章).ppt VIP
- 《PyTorch与深度学习实战》第2章 PyTorch深度学习通用流程.pptx VIP
- 简谱D 想着我Think of Me简谱歌剧魅影.pdf VIP
- 2023-2024学年安徽省马鞍山市第八中学九年级上学期期中考试化学试卷.pdf VIP
- 《PyTorch与深度学习实战》第3章 PyTorch深度学习基础.pptx VIP
- 好书推荐《朝花夕拾》读书分享名著导读PPT课件.pptx VIP
- 22个专业95个病种中医临床诊疗方案目录44.pdf VIP
- 精品解析:天津市第四十三中学2024-2025学年高一上学期第一次月考英语试题(解析版).docx VIP
- 2025年北京市东城区九年级初三一模语文试卷(含答案).docx
文档评论(0)