week5-[字符数组]查找

week5-[字符数组]查找

题目描述

给定两个只包含小写字母的字符串 a,ba,ba,b,请问 bbb 是否在 aaa 中出现过?

输入格式

输入共 222 行。

第 111 行 111 个只包含小写字母的字符串 aaa。

第 222 行 111 个只包含小写字母的字符串 bbb。

输出格式

输出共 111 行表示答案。如果出现过,输出 YES,否则输出 NO`。

样例 #1

样例输入 #1

复制代码
helloworld
owo

样例输出 #1

复制代码
YES

样例 #2

样例输入 #2

复制代码
abcdcaa
da

样例输出 #2

复制代码
NO

提示

数据范围

对于所有数据,a,ba,ba,b 的长度都不超过 100010001000。

方法一:用 string.find (最简单)

c++ 复制代码
#include <bits/stdc++.h>
using namespace std;

int main() {
    string a, b;
    cin >> a >> b;
    if (a.find(b) != string::npos) cout << "YES\n";
    else cout << "NO\n";
    return 0;
}

方法二:自己写子串查找(纯数组思路)

c++ 复制代码
#include <bits/stdc++.h>
using namespace std;

int main() {
    char a[1010], b[1010];
    cin >> a >> b;
    int n = strlen(a), m = strlen(b);
    bool ok = false;

    for (int i = 0; i + m <= n; i++) {
        bool match = true;
        for (int j = 0; j < m; j++) {
            if (a[i + j] != b[j]) {
                match = false;
                break;
            }
        }
        if (match) {
            ok = true;
            break;
        }
    }

    cout << (ok ? "YES" : "NO") << "\n";
    return 0;
}
相关推荐
ULTRA??几秒前
判断水仙花数并输出,c++
c++·算法
_Voosk几秒前
写了个开头的 C++ Tutorial
开发语言·c++
Arva .2 分钟前
G1收集器
java·jvm·算法
努力毕业的小土博^_^3 分钟前
【生成式AI】Cross-Attention:多模态融合的神经网络桥梁(上篇)
人工智能·深度学习·神经网络·算法·机器学习·遥感
lingggggaaaa4 分钟前
C2远控篇&C&C++&SC转换格式&UUID标识&MAC物理&IPv4地址&减少熵值
c语言·c++·学习·安全·web安全·网络安全·免杀对抗
for_ever_love__20 分钟前
移动应用开发实验室25级期末考核
c++
聆风吟º22 分钟前
【顺序表习题|图解|双指针】移除元素 + 删除有序数组中的重复项
c语言·数据结构·c++·经验分享·算法
无心水23 分钟前
【神经风格迁移:蒙德里安】12、语义感知的构图重构算法:让蒙德里安风格“理解“图像内容
算法·重构·vgg·信息智能化·csdn月度精选·ai原生架构·神经风格迁移:蒙德里安
Salt_072824 分钟前
DAY33 类的装饰器
python·算法·机器学习
炽烈小老头25 分钟前
【每天学习一点算法 2025/12/10】反转链表
学习·算法·链表