回 帖 发 新 帖 刷新版面

主题:删除数问题

删除数问题。键盘输入一个高精度的正整数n(<=240位),去掉任意s个数字后剩下的数字按原左右次序将组成一个新的正整数。编程对给定的n和s,寻找一种方案,使得剩下的数最小。

输入:


输出:
最后剩下的最小数
{样例输入}
178543
4
{样例输入}
13

回复列表 (共12个回复)

11 楼

对不起,
我看到5879这个例子才知道我粗心大意了,
很抱歉,我再次修改如下:
一遇到倒序,马上删除就对了:


input "请输入少于240位的正整数:",Z$
input "请输入要删除的数字的个数:",S


do while s
   i=i+1
   if i>=len(Z$) then exit do
   if mid$(i)>mid$(i+1) then
      Z$=left$(Z$,i-1)+mid$(Z$,i+1)
      s=s-1
      i=0
   endif
loop
z$=left$(z$,len(z$)-s)

print "得出结果是:";Z$

12 楼

顶一下

我来回复

您尚未登录,请登录后再回复。点此登录或注册