题目中每次访问字符串区间将下标视作从 1 开始而非从 0 开始!
思路:
#include<bits/stdc++.h>
using namespace std;
string s, t;
int l1, r1, l2, r2;
int main()
{
getline(cin, s);
getline(cin, t);
cin.ignore();
int q;
cin >> q;
for(int i = 0; i < q; i++)
{
cin >> l1 >> r1 >> l2 >> r2;
string x = s.substr(l1 - 1, r1 - l1 + 1);
string y = t.substr(l2 - 1, r2 - l2 + 1);
if(x < y)
{
cout<<"第一个字符串区间更小。\n";
}
else if(x > y)
{
cout<<"第二个字符串区间更小。\n";
}
else
{
cout<<"两个字符串区间相等。\n";
}
}
return 0;
}