微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

为什么这段代码对测试用例 5 给出了错误的答案?

如何解决为什么这段代码对测试用例 5 给出了错误的答案?

我正在解决问题 1429-C,当我设计以下方法解决上述问题时。

我的代码

#include <iostream>
#include <vector>
#include <string>
#include <cmath>
#include <algorithm>


int main()
{
    // Variables
    std::string s {};
    std::string t {};
    std::vector<int> v1{};
    std::vector<int> v2{};
    std::vector<int> v3{};
    int m,n {};

    
    // User input

    std::cin >> n >> m >> s >> t; 
    
    for (int i = 0; i < t.size(); ++i)
    {
        v1.push_back(s.find_first_of(t.at(i)));
        v2.push_back(s.find_last_of(t.at(i)));
    }
    for (int i = 0; i < v1.size() - 1; ++i)
    {
        v3.push_back(std::abs(v1.at(i)-v2.at(i+1)));
    }
    
    std::cout << *(std::max_element(v3.begin(),v3.end())) << std::endl;
    return 0;
}

代码似乎适用于除测试集 5 之外的所有测试集: Detailed analysis

有人可以就这个问题提供一些见解吗?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。