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

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

P1098 字符串展開

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

題目描述

在輸入的字符串中,用連續遞增的字母獲數字串替代其中的減號。(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.
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 郎溪县| 平利县| 浠水县| 钟祥市| 济宁市| 哈巴河县| 砚山县| 谷城县| 台南市| 弥渡县| 调兵山市| 伊金霍洛旗| 石河子市| 福州市| 邵阳市| 西宁市| 平乡县| 大兴区| 手游| 项城市| 鄄城县| 望江县| 临潭县| 迭部县| 寿光市| 河池市| 石楼县| 临澧县| 湟中县| 思南县| 安西县| 平山县| 鄂托克旗| 靖远县| 陕西省| 延津县| 阿图什市| 厦门市| 肇庆市| 贵德县| 定西市|