字符串展开
#include <bits/stdc++.h> using namespace std; int p1,p2,p3; string s,S; char a(char t){ if(p1==3){ return '*'; }else if(p1==1){ return tolower(t); }else{ return toupper(t); } } int main() { cin>>p1>>p2>>p3>>s; s = " "+s+" "; for(int i = 1;i<s.size()-1;i++){ if(s[i]!='-'){ S+=s[i]; }else{ char zuo = s[i-1],you = s[i+1]; if(zuo<you && (islower(zuo) && islower(you) || isdigit(zuo) && isdigit(you))){ if(p3==1){ for(char i = zuo+1;i<=you-1;i++){ for(int j = 1;j<=p2;j++){ S+=a(i); } } }else{ for(char i = you-1;i>=zuo+1;i--){ for(int j = 1;j<=p2;j++){ S+=a(i); } } } }else{ S+='-'; } } } cout<<S; return 0; }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库