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

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

P1098 字符串展開

2019-11-14 12:32:15
字體:
來源:轉載
供稿:網友

題目描述

在輸入的字符串中,用連續遞增的字母獲數字串替代其中的減號。(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.
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 无锡市| 伽师县| 怀安县| 读书| 青阳县| 仙桃市| 吴桥县| 南汇区| 绥滨县| 鄂尔多斯市| 白河县| 屏南县| 三台县| 惠安县| 荃湾区| 新乡县| 米脂县| 桓台县| 吉隆县| 绥滨县| 亳州市| 云林县| 巴林右旗| 海宁市| 泸水县| 永清县| 宣武区| 神池县| 铁岭县| 平定县| 岳西县| 会理县| 浏阳市| 潮州市| 建平县| 阿瓦提县| 青州市| 内江市| 昌江| 翁牛特旗| 江都市|