A. Vitaly and Strings
题意:
给出两个长度相同的字符串,问是否存在一个字符串,该串的字典序大于输入的第一个串 且 小于第二个串。
分析:
找出比第一个串大一的串,看看它是否小于第二个串,是的话就满足,否则不存在这样的串。
1 #include <bits/stdc++.h> 2 using namespace std; 3 4 const int maxn = 110; 5 6 char s1[maxn], s2[maxn]; 7 8 int main() 9 { 10 //freopen("in.txt", "r", stdin); 11 12 scanf("%s%s", s1, s2); 13 int l = strlen(s1); 14 int i = l-1; 15 s1[i] += 1; 16 bool flag = false; 17 while(i > 0 && s1[i] > 'z') 18 { 19 s1[i] -= 26; 20 s1[--i] += 1; 21 } 22 if(s1[0] > 'z') { puts("No such string"); return 0; } 23 for(int i = 0; i < l; ++i) if(s1[i] < s2[i]) { flag = true; break; } 24 25 if(flag) printf("%s\n", s1); 26 else puts("No such string"); 27 28 return 0; 29 }