zoukankan      html  css  js  c++  java
  • 课程题目 : 1003. 简单字符串匹配

    题目:

    Description

     

    给定两个字符串S1和S2,要求判定S2是否能够被S1做循环移位得到的字符串包含。
    说明:字符串S1和S2中不包含空格,每个字符串至少包含一个字符。
    例如:给定S1=AABCD,S2=CDAA,则返回True;给定S1=ABCD,S2=ACBD,则返回False。
    Input

     

    第一行为整数N(0<N<1,000,000,000)
    第二到N+1行是N组输入数据,每行包括两个字符串,字符串S1和字符串S2,其中字符串的长度不超过100。
    Output

     

    针对每个例子,如果S2能够被S1做循环移位得到的字符串包含,输出True,否则输出False。
    每个输出结果为独立的一行。
    Sample Input
    2
    AABCD CDAA
    ABCD ACBD
    Sample Output
    True
    False

    题目很简单,主要是记录string类型里面find函数的使用

    这里string里面的一个find函数的返回值是size_type,如果没找到的标志是npos,找到则返回s2在s1中的下标位置

     1 #include<iostream>
     2 using namespace std;
     3 
     4 int main(){
     5     int n;
     6     cin>>n;
     7     while(n--){
     8         string s1,s2;
     9         string::size_type position;
    10         cin>>s1>>s2;
    11         s1=s1+s1;
    12         position=s1.find(s2);
    13         if(position==s1.npos)
    14             cout<<"False
    ";
    15         else
    16             cout<<"True
    ";
    17     }
    18     return 0;
    19 }
  • 相关阅读:
    系统幂等设计
    一文读懂消息队列一些设计
    DDD应对运营活动系统腐化实践
    一文读懂DDD
    阿里是如何处理分布式事务的
    核心交易系统架构演进
    系统服务化
    重构系统的套路-写有组织的代码
    数组生成树形结构
    js 对象全等判断
  • 原文地址:https://www.cnblogs.com/jolin123/p/3348201.html
Copyright © 2011-2022 走看看