这道题有问题吧

NiJunHeng 发表于 20天前 · 关联问题 [算法课滑动窗口] 最长不重复子串

C++,同样的代码我在leetcode上都过了,这里没过。用java同样的逻辑写了一遍也过了。

NiJunHeng 发表于 20天前

这是代码,最后一个样例没过

#include <bits/stdc++.h> using namespace std;

bool check(string& l,char c) {

for(int i=0;i<l.length();i++) { if(c==l[i]) { return false; } } return true;

}

int main() {

string a;cin>>a; int n = a.length(); if(n==0) { cout<<0; return 0; } int i=0; int j=1; string l=""; l+=a[0]; //cout<<l<<endl; int ans = 1; while(j<n) { char c = a[j]; if(check(l,c)) { l.push_back(c); } else { i=l.find(c)+1; l.push_back(c); l=l.substr(i); //cout<<"sub"<<l<<endl; } //cout<<l<<endl; int len= l.length(); ans = max(ans,len); j++; } cout<<ans;

}