首页 > 代码库 > CodeForces 518A - Chewbaсca and Number(思路)
CodeForces 518A - Chewbaсca and Number(思路)
题意:给你两个长度相同的字符串,输出一个长度与它俩相同,且字典序位于两者之间(不可与其中一者相同)的字符串,若不存在则输出“No such string”。(输入保证字典序第一个严格小于第二个,且长度相同)
水题,让最后一个加一个单位的字典序然后检查是否符合条件即可(注意为‘z‘的时候要进位,若长度超过则也不符合)
#include<cstdio> #include<cstring> #include<cctype> #include<cstdlib> #include<cmath> #include<iostream> #include<sstream> #include<iterator> #include<algorithm> #include<string> #include<vector> #include<set> #include<map> #include<deque> #include<queue> #include<stack> #include<list> typedef long long ll; typedef unsigned long long llu; const int MAXN = 100 + 10; const int MAXT = 10000 + 10; const int INF = 0x7f7f7f7f; const double pi = acos(-1.0); const double EPS = 1e-6; using namespace std; char s1[MAXT], s2[MAXT], s[MAXT]; int main(){ scanf("%s%s", s1, s2); int len = strlen(s1); int lur = len - 1; bool flag = true; if(s1[lur] == ‘z‘){ while(lur >= 0 && s1[lur] == ‘z‘) s1[lur] = ‘a‘, --lur; if(lur == -1) flag = false; else s1[lur] = s1[lur] + 1; } else s1[lur] = s1[lur] + 1; if(strcmp(s1, s2) >= 0) flag = false; if(!flag) printf("No such string\n"); else printf("%s\n", s1); return 0; }
CodeForces 518A - Chewbaсca and Number(思路)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。