国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

P1098 字符串展開

2019-11-14 11:33:23
字體:
來源:轉載
供稿:網友

題目描述

在輸入的字符串中,用連續遞增的字母獲數字串替代其中的減號。(1)出現了減號“-”,減號兩側同為小寫字母或數字,且按照ASCII碼的順序,減號右邊的字符大于左邊的字符。(2) p1=1時,填充小寫字母;p1=2時,填充大寫字母。p1=3時,填充的字母個數相同的星號“*”。(3) p2=k表示同一個字符要連續填充k個。(4) p3=1表示維持原來順序,p3=2表示采用逆序輸出。(5) 如果減號右邊的字符恰好是左邊字符的后繼,只刪除中間的減號。如果減號右邊的字符按照ASCII碼的順序小于或等于左邊字符,輸出時,要保留中間的減號。

樣例輸入

1 2 1abcs-w1234-9s-4zz

樣例輸出

abcsttuuvvw1234556677889s-4zz

思路

O(n)模擬,判斷每種情況,按題意模擬。var a,b,c:longint; s:string;PRocedure main(p:longint);var i,j:longint;begin if s[p+1]<=s[p-1] then write('-') else if c=1 then for i:=(ord(s[p-1])+1) to (ord(s[p+1])-1) do for j:=1 to b do if a=3 then write('*') else if (s[p-1]>='a')and(s[p-1]<='z')and(a=2) then write(upcase(chr(i))) else write(chr(i)) else for i:=(ord(s[p+1])-1) downto (ord(s[p-1])+1) do for j:=1 to b do if a=3 then write('*') else if (s[p-1]>='a')and(s[p-1]<='z')and(a=2) then write(upcase(chr(i))) else write(chr(i));end;var i:longint;begin readln(a,b,c); readln(s); write(s[1]); for i:=2 to length(s)-1 do if s[i]<>'-' then write(s[i]) else if ((s[i-1]>='0')and(s[i-1]<='9')and(s[i+1]>='0')and(s[i+1]<='9'))or((s[i-1]>='a')and(s[i-1]<='z')and(s[i+1]<='a')and(s[i+1]>='z')) then main(i) else write(s[i]); writeln(s[length(s)]);end.
上一篇:HDU 6012

下一篇:sql索引語法

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 灌阳县| 河曲县| 鄂伦春自治旗| 银川市| 新闻| 大荔县| 沂源县| 金平| 德钦县| 石狮市| 浦县| 长海县| 东山县| 黄山市| 大同市| 深泽县| 上饶市| 正镶白旗| 通化市| 额济纳旗| 武陟县| 白沙| 休宁县| 浏阳市| 兴义市| 河东区| 兴化市| 依兰县| 威宁| 蕲春县| 敦化市| 绥滨县| 昌平区| 湖北省| 香港 | 太仆寺旗| 安岳县| 丽江市| 普兰店市| 安徽省| 德安县|