pascal簡單問題急求

2023-02-20 13:10:19 字數 1190 閱讀 3321

1樓:洛谷科技

vari,j,n:longint;

s:string;

begin

readln(s);

readln(n);

for i:= 1 to n do

begin

j:=1;

while (s[j+1]>=s[j]) and (j=』,而不是『>』}

inc(j);

delete(s,j,1);

while s[1]='0' do

delete(s,j,1);

end;

if s='' then write('0')else write(s);

end.

本題的思路還是貪心吧,每一次只要找到s[i]>s[i+1]且s[i+1]<=s[i+1]時,就直接把s[i]刪之,就能輕鬆解決。

沒問題,有問題請追問。

2樓:pascal真人

這是典型的雙向貪心,上面那人的方法只能過一半

for example,輸入 213 1,他會輸出21,而正確的是13。

搜尋每次去一個數字的最小數就行了

典型類似題目:石子打牛 自己搜吧

vars,s1,s2:string;

a1,a2,a3:longint;

begin

readln(s);

readln(a1);

a3:=length(s);

while a3-1>=a1 do

begin

s2:=copy(s,2,a3);

for a2:=2 to a3 do

begin

s1:=copy(s,1,a2-1)+copy(s,a2+1,a3);

if s2>s1 then s2:=s1;

end;

s:=s2;

a3:=length(s);

end;

while (s[1]='0') and (length(s)>1) do delete(s,1,1);

writeln(s);

end.

相信我,我的絕對是對的,記住我的標誌:哪兒有a1,a2等的出現,哪兒就有我!

3樓:匿名使用者

cfcccccccccccccccccccccccccccccccccccccccccc

Pascal問題 矩陣乘法,Pascal 矩陣乘法的完整過程?

vara,b,c,i,j,k longint x,y,f array 0.2000,0.2000 of longint begin read a read b read c for i 1 to a do for j 1 to b do read x i,j for i 1 to b do for ...

pascal郵票問題

你最後一步的prin寫錯了!應該這樣寫 var n,m,i,mm integer a array 1.100 of integer money array 0.10000 of boolean procedure print var max,i,j integer begin max 0 區域性變數...

pascal問題望解答,3個pascal問題,望解答!

第一題就是while3重,判斷。然後判斷它是不是素數 pascal程式設計問題,求大師解答!這個問題一點也不簡單!這涉及演算法 簡單的思路,就是對這n個數,做列舉,從1個,2個,3個,每個裡面又有不同的組合,這就是所謂的 冪集 如果n很大的時候,這個方法效率太低不可行 前面那位同學提及的揹包演算法就...