标签:子串 返回 string int 初赛 蓝桥 2019 字符串 include
题意:一个字符串的非空子串是指字符串中长度至少为1 的连续的一段字符组成的串。
例如,字符串aaab 有非空子串a, b, aa, ab, aaa, aab, aaab,一共7 个。
注意在计算时,只算本质不同的串的个数。
请问,字符串0100110001010001 有多少个不同的非空子串?
1 #include <iostream> 2 #include <algorithm> 3 #include <set> 4 #include <cstring> 5 #include <string> 6 #include <stdio.h> 7 #define rep(i,a,b) for(int i=(a);i<=(b);++i) 8 #define per(i,a,b) for(int i=(a);i>=(b);++i) 9 using namespace std; 10 const int N=1e3+7; 11 typedef long long ll; 12 int main() 13 { 14 string s="0100110001010001"; 15 set<string>ans; 16 int len=s.size(); 17 rep(i,0,len-1){ 18 rep(j,0,len-1){ 19 string ss=s.substr(i,j); 20 ans.insert(ss); 21 } 22 } 23 printf("%d\n",ans.size()); 24 return 0; 25 }
substr()函数
string s;
s.substr(start,length);
start:字符串的起始位置
正数:字符串指定位置开始。
负数:在字符串结尾的指定位置开始。
0:在字符串的第一个字符处开始。
length:返回字符串的长度,默认是到字符串结尾的位置。
正数:从规定的起始位置返回。
负数:字符串结尾末端返回。
返回值:返回字符串的提取部分,失败返回false,或者返回一个空字符串。
标签:子串,返回,string,int,初赛,蓝桥,2019,字符串,include 来源: https://www.cnblogs.com/Edviv/p/12330789.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。