主题:[讨论]十万火急呀!大牛来帮帮我呀!++++++++50!
			
 梦幻神兵
				 [专家分:600]  发布于 2006-03-04 17:05:00							
			删数问题:一个高精度正整数N,去掉其中任意S个数字后剩下的数字按从左到右的顺序将组成一个新的整数,对于给定的N和S,编程寻找一种方案,使剩下的数字组成的新数最小,输出这个新数。[em1]
						
					 
		
			
回复列表 (共5个回复)
		
								
				沙发
				
					
47 [专家分:590]  发布于 2006-03-05 09:41:00				
				用动态规划嘛
							 
						
				板凳
				
					
bigchen [专家分:1940]  发布于 2006-11-03 07:18:00				
				也可以用贪心解决:
Program Delete_digit;
  Var  n:string;{n是由键盘输入的高精度正整数}
     s,a,b,c:byte;{s是所要删除的数字的个数}
begin
  readln(n);   readln(s);
  for a:=1 to s do
    for b:=1 to length(n) do 
if b<>length(n) then
           begin if n[b]>n[b+1] then  begin delete(n,b,1);break; end  end
                              else  delete(n,b,1);
writeln(n);
end. 
							 
						
				3 楼
				
					
编程黑客 [专家分:1660]  发布于 2006-11-07 22:02:00				
				if b<>length(n) then
           begin if n[b]>n[b+1] then  begin delete(n,b,1);break; end  end
                              else  delete(n,b,1);
这句是什么意思啊
							 
						
				4 楼
				
					
zjh1312 [专家分:90]  发布于 2007-03-14 21:11:00				
				什么是动态规划啊???加我QQ:529828394...注明PASCAL
							 
						
				5 楼
				
					
LSQ [专家分:220]  发布于 2007-05-05 10:39:00				
				动态规划
							 
									
			
我来回复