c 网站开发需要学什么,玉环 企业网站建设,网站开发取名,安卓系统P1308 [NOIP2011 普及组] 统计单词数
P1308 [NOIP2011 普及组] 统计单词数 P1308 [NOIP2011 普及组] 统计单词数
题意 一行#xff0c;如果在文章中找到给定单词则输出两个整数#xff0c;两个整数之间用一个空格隔开#xff0c;分别是单词在文章中出现的次数和第一次出现…P1308 [NOIP2011 普及组] 统计单词数
P1308 [NOIP2011 普及组] 统计单词数 P1308 [NOIP2011 普及组] 统计单词数
题意 一行如果在文章中找到给定单词则输出两个整数两个整数之间用一个空格隔开分别是单词在文章中出现的次数和第一次出现的位置即在文章中第一次出现时单词首字母在文章中的位置位置从 0 开始如果单词在文章中没有出现则直接输出一个整数-1。 思路 定义c把字符串b除空格之外的数储存进去表示空格用单引号在b的最后加一个空格如果查找单词在最后一个因为用空格 来提取单词把字符串a,b全部转换成大写大小写都行ASCII代码的大小写转换for循环查找 坑点 坑点到没什么主要是难还有什么没想到。 算法一字符串的输入输出ASCLL码的字母转换
时间复杂度
输出大小: 1.83679389953613 MiB编译时间: 0.70s
实现步骤 定义字符输入定义c把字符串b除空格之外的数储存进去表示空格用单引号在b的最后加一个空格如果查找单词在最后一个因为用空格 来提取单词。把字符串a,b全部转换成大写大小写都行ASCII代码的大小写转换for循环查找此单词出现次数和位置如果这个单词不是要找的单词就把c这个字符串清空用双引号。 代码
#include iostream
#include string.h
using namespace std;
int main(){string a,b,c;//双引号 //定义c把字符串b除空格之外的数储存进去 int len,len1,s0,k-1;getline(cin,a);getline(cin,b);b ;//表示空格用单引号在b的最后加一个空格如果查找单词在最后一个//因为用空格 来提取单词 lena.length();len1b.length();//把字符串a,b全部转换成大写大小写都行//ASCII代码的大小写转换 for(int i0;ilen;i){if(a[i]Aa[i]Z) a[i]32;} for(int i0;ilen1;i){if(b[i]Ab[i]Z) b[i]32;}for(int i0;ilen1;i){if(b[i] ){if(ca){s;if(k-1){//第一次出现单词的位置 ki-a.length();//减去给定单词的长度 }}c;//如果这个单词不是要找的单词就把c这个字符串清空用双引号 }else cb[i];}if(k-1){coutk;}else couts k;return 0;
}总结 代码很好理解看懂就可以了。但是题吧有一点点难要进行ASCLL码的转换注释都在代码里了就不多说了。