#CJSIM06. 区间展开

区间展开

区间展开

题目描述

给定三个参数 p1,p2,p3 和一个只包含数字、小写字母、减号的字符串。需要按照规则处理字符串中的减号 -

当一个减号左右两侧满足以下条件时可以展开:

  1. 左右字符同为数字,或同为小写字母;
  2. 左字符严格小于右字符。

展开时只输出左右端点之间的字符,不重复输出两个端点。

  • p1=1:字母输出小写,数字保持不变;
  • p1=2:字母输出大写,数字保持不变;
  • p1=3:中间每个字符都用 * 代替;
  • 每个中间字符连续输出 p2 次;
  • p3=1 按升序展开,p3=2 按降序展开。

如果减号不能展开,则原样保留。若左右字符相邻,例如 a-b,减号被删除但不会插入新字符。

输入格式

第一行输入 p1,p2,p3

第二行输入待处理字符串。

输出格式

输出展开后的字符串。

样例

2 2 2
a-f
aEEDDCCBBf

数据范围

1 <= p1 <= 31 <= p2 <= 81 <= p3 <= 2,原字符串长度不超过 100