请您留下宝贵的建议吧:)
广西百色高中欢迎您!

| 网站首页 | 学校概况 | 软件下载 | 图片中心 | 雁过留声 | 视频资源 | 校长信箱 | 内 部 网 |
| 同 学 录 | 网络办公 | 教学课件 | 优秀教案 | 试卷下载 | 教学素材 | 教学论文 | 电子图书 |

 
您现在的位置: 广西百色高中校园网 >> 学校概况 >> 学生频道 >> 信息技术 >> 精典程序 >> 文章正文 用户登录 新用户注册
   
   

最小数字子串          【字体:
最小数字子串
作者:仔仔    文章来源:本站原创    点击数:    更新时间:2006-9-26
最小数字子串
 
 
 键盘输入一个高精度正整数t(不超过240位),去掉其中S个数字后,剩下的数字按原顺序组成一个新数,试对给定的 t 与 S, 寻找一种方案,使剩下的数字组成的新数最小.

program lxw001;
var t1,t2:string[250];
    a,b:array[1..250] of integer;
    i,j,r,s,s1:integer;
begin
  writeln("输入数字串:"); readln(t1);
  writeln("输入删除数字个数:");readln(s);
  s1:=s;  r:=0;  t2:="";
  for i:=1 to length(t1) do a[i]:=i;
  repeat
    i:=1;
    for j:=1 to s1+1 do  if t1[j]    if i>1 then
      for j:=1 to i-1 do  begin inc(r); b[r]:=a[j]  end;
    t2:=t2+copy(t1,i,1);
    delete(t1,1,i);
    for j:=1 to length(t1) do a[j]:=a[j+i];
    s1:=s1-(i-1);
    if length(t1)=s1 then {处理尾部应删的数}
      begin
        for j:=1 to s1 do begin inc(r);b[r]:=a[j] end;
        s1:=0;  t1:="";
      end;
  until s1=0;
  t2:=t2+t1;
  writeln("最小数:",t2);
  write("删除数字的位置:  ");
  for i:=1 to s do write(b[i],"  ");
  writeln;
end.
文章录入:qinjun    责任编辑:qinjun 
  • 上一篇文章:

  • 下一篇文章:
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
          最新热点       最新推荐       相关文章
    没有相关文章
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

       
     
     
     
    广西百色高中欢迎您!   网站地图 | 联系站长 | 友情链接 | 用户排行 | 版权申明 | 管理登录
    版权所有 Copyright© 2005-2010 广西百色高中 (桂ICP备05013955号)
    学校地址:广西百色市城乡路93号 电话号码:0776-2824142 传真:0776-2847293 邮政编码:533000
    站    长:覃钧  QQ:75331465            改版时间:2007年8月20日