目录
题意:给定两个相同长度的字符串,让你找出一个字符串,字典序在两都之间。
析:这个题当时WA了好多次,后来才发现是这么水,我们只要把 s 串加上,然后和算数一样,该进位进位,然后再和 t 比较就行。
代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | #include <iostream> #include <cstdio> #include <algorithm> #include <vector> #include <set> #include <cstring> #include <cmath> #include <map> #include <cctype> using namespace std; const int maxn = 1000 + 5; string s, t; int main(){ while (cin >> s >> t){ int n = s.size(); int cnt = 0; ++s[n-1]; if (s[n-1] > 'z' ){ s[n-1] = 'a' ; cnt = 1; } for ( int i = n-2; i >= 0; --i){ s[i] += cnt; if (s[i] > 'z' ){ s[i] = 'a' ; cnt = 1; } else cnt = 0; } if (s == t) puts ( "No such string" ); else cout << s << endl; } return 0; } |
分类:
思维
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 深入理解 Mybatis 分库分表执行原理
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
· 现代计算机视觉入门之:什么是图片特征编码
· .NET 9 new features-C#13新的锁类型和语义
· Spring AI + Ollama 实现 deepseek-r1 的API服务和调用
· 《HelloGitHub》第 106 期
· 数据库服务器 SQL Server 版本升级公告
· 深入理解Mybatis分库分表执行原理
· 使用 Dify + LLM 构建精确任务处理应用