作业帮 > 综合 > 作业

pascal 难题给出一个多位数N(不超过240位),从中删除S个数字(不超过200的正整数),要求删除后的N按原次序组

来源:学生作业帮 编辑:搜搜考试网作业帮 分类:综合作业 时间:2024/08/07 07:02:34
pascal 难题
给出一个多位数N(不超过240位),从中删除S个数字(不超过200的正整数),要求删除后的N按原次序组成新数,使新数最小,输出最小的新数.
样例:
Delet.in
2358649013
3
Delet.out
2349013
(快!)
1.免文件输入输出.
2.要程序.
pascal 难题给出一个多位数N(不超过240位),从中删除S个数字(不超过200的正整数),要求删除后的N按原次序组
____这道题不妨用贪心的思想解决.
____我们可以从高到低考察原数的每一位,对于剩余的删除次数枚举删除的次数,可以不删.在所有的可能情况中选择删除后当前位最小的情况.如果有多种情况满足最优情况,则选择删除最少的.如果最终删除剩余次数大于零,则从数串末尾删除剩余的位数.最后输出.
附上pascal源程序,
var i,j,k,l,m,n,left,min,js:longint;
s,mid:string;
ch:char;
begin
readln(s);
readln(k);
left:=k;
n:=0;
for js:=1 to length(s) do
begin
min:=10;
inc(n);
for i:=0 to left do
begin
mid:=s;
delete(mid,n,i);
if ord(mid[n])-48
给出一个多位数N,从中删除S个数字,要求删除S个数字后,将剩下的数字按原左右次序组成一个新的正整数,使 pascal高精度拆分整数 【问题描述】 输入一个正整数N(不超过一百位),如果N是偶数,则拆分N的各个数字相 请在整数n=742683613984中删除8个数字,使得余下的数字按原次序组成的新数最小.要求如下: 输入一个N位高精度的正整数,去掉其中任意K个数字后剩下的数字按原左右次序组成一个新的正整数. c语言删数问题【问题描述】通过键盘输入一个正整数n,去掉其中任意s个数字后,剩下的数字按原左右次序,将组成一个新的正整数 输入一个数n,然后删去其中s个数字,使其删除后的数 按原来的顺序组成最小的数 pascal输入一个n位的正整数,输出由这n个数字组成的最大正整数. 1.求两个正整数(不超过一百位)的和.2.求两个正整数(不超过一百位)的差.用Free pascal 求最大正整数n,使得n为集合S中的元素,且满足(1)S中的每个数均为不超过2002的正整数 pascal题:求N个数的和,给出一个正整数N,可求出从1开始的这N个数的全部各个数位上的数字之和. 给出一个不多于5位的正整数,要求:输出它是几位数;分别输出每一位数,按逆顺序输出各位数字,如321,则123 一个n位正整数,它由1、2...n这n个数字排列而成,如果它的前K个数字组成的k位数能被k整除,就称n位幸运数.问这样的