当前位置: 首页 > news >正文

蓝桥杯备考:模拟算法之字符串展开

P1098 [NOIP 2007 提高组] 字符串的展开 - 洛谷 | 计算机科学教育新生态

#include <iostream>
#include <cctype>
#include <algorithm>
using namespace std;
int p1,p2,p3;
string s,ret;
void add(char left,char right)
{string tmp;for(char ch = left+1;ch<right;ch++){char t = ch;if(p1==2&&isalpha(ch)) t=toupper(t);else if(p1==3) t='*';for(int i = 0;i<p2;i++){tmp+=t;}}if(p3 == 2) reverse(tmp.begin(),tmp.end());ret+=tmp;
}
int main()
{cin >> p1 >> p2 >> p3;cin >> s;int n = s.size();for(int i = 0;i<n;i++){char ch = s[i];if(ch != '-' || i==n-1 || i==0) ret+=ch;else{char left = s[i-1];char right = s[i+1];if((isdigit(left)&&isdigit(right)&&right>left)||(isalpha(left)&&isalpha(right) && right>left)){add(left,right);}else ret+=ch;} }cout << ret << endl;return 0;
}

http://www.lryc.cn/news/530764.html

相关文章:

  • 使用LLaMA-Factory对AI进行认知的微调
  • @Nullable 注解
  • Arduino大师练成手册 -- 控制 AS608 指纹识别模块
  • Mask R-CNN与YOLOv8的区别
  • 在Ubuntu上使用Docker部署DeepSeek
  • MySQL的覆盖索引
  • 【Numpy核心编程攻略:Python数据处理、分析详解与科学计算】2.12 连续数组:为什么contiguous这么重要?
  • 在React中使用redux
  • lstm预测
  • 《 C++ 点滴漫谈: 二十五 》空指针,隐秘而危险的杀手:程序崩溃的真凶就在你眼前!
  • 【AI】探索自然语言处理(NLP):从基础到前沿技术及代码实践
  • 2025年Android开发趋势全景解读
  • C#面试常考随笔11:Dictionary<K, V>、Hashtable的内部实现原理是什么?效率如何?
  • Linux防火墙基础
  • Qt u盘自动升级软件
  • 【Conda 和 虚拟环境详细指南】
  • Python递归函数深度解析:从原理到实战
  • OpenGL学习笔记(五):Textures 纹理
  • 【TypeScript】基础:数据类型
  • Notepad++消除生成bak文件
  • Android NDK
  • 内部知识库助力组织智力激发与信息共享实现业绩增长
  • 通过F12收集的信息
  • 用Python替代OpenMV IDE显示openmv USB 图像
  • c语言:编译和链接(详解)
  • 数据结构【单链表操作大全详解】【c语言版】(只有输入输出为了方便用的c++)
  • leetcode27.删除有序数组中的重复项
  • [c语言日寄]越界访问:意外的死循环
  • 【c++11】包装器
  • 信息学奥赛一本通 1422:【例题1】活动安排