int main() { string s; char a, b; cin >> s; cin >> a >> b; set<long long int> loca, locb; for (long long int i = 0; i < s.length(); i++) { if (s[i] == a + 32 || s[i] == a - 32 || s[i] == a) loca.insert(i); else if(s[i] == b + 32 || s[i] == b - 32 || s[i] == b) locb.insert(i); } if (loca.empty() || locb.empty()) { cout << -1 << endl; return 0; } auto its1 = loca.begin(); auto its2 = locb.end(); its2--; long long int ans = abs(*its1-*its2); //首尾 its1 = loca.end(); its1--; its2 = locb.begin(); ans = max(ans, abs(*its1 - *its2)); //首尾 its1 = loca.begin(); its2 = locb.begin(); ans = max(ans, abs(*its1 - *its2)); //首首 its1 = loca.end(); its1--; its2 = locb.end(); its2--; ans = max(ans, abs(*its1 - *its2)); //尾尾 cout << ans << endl; system("pause"); return 0; } 有大佬能指点一下哪里错了,只能过40%。
点赞 1

相关推荐

叁六玖:你看,最后不是让你加油,就是鼓励你,还祝福你求职顺利。
点赞 评论 收藏
分享
10-14 21:00
门头沟学院 Java
吃花椒的狸猫:这个人说的倒是实话,特别是小公司,一个实习生哪里来的那么多要求
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务