給兩個字串(都是大寫字母,且長的相等) 求字典序在這兩個字串之間的一個等長字串
阿新 • • 發佈:2018-11-22
題目有點坑,要仔細想想(水題一道)
#include<iostream> #include<cstring> #include<algorithm> using namespace std; int main() { string a,b,d,ff,gg,c,uu,qq; cin>>a>>b; if(a>b) { c=b; uu=a; qq=a; } else { c=a; uu=b; qq=b; } int s=c.length(); /* for(int i=0;i<s;i++) { }*/ int k; for(int i=0;i<s;i++) { if(c[i]!='Z') { k=i; break; } } c[k]+=1; for(int i=k+1;i<s;i++) { c[i]='A'; } //ff=c.substr(0,k+1); int l; for(int i=s-1;i>=0;i--) { if(uu[i]!='A') { l=i; break; } } uu[l]-=1; for(int i=l+1;i<s;i++) { uu[i]='Z'; } if(c<qq) { cout<<c; } else { cout<<uu; } }