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.要程序.
给出一个多位数N(不超过240位),从中删除S个数字(不超过200的正整数),要求删除后的N按原次序组成新数,使新数最小,输出最小的新数.
样例:
Delet.in
2358649013
3
Delet.out
2349013
(快!)
1.免文件输入输出.
2.要程序.
![pascal 难题给出一个多位数N(不超过240位),从中删除S个数字(不超过200的正整数),要求删除后的N按原次序组](/uploads/image/z/16738295-23-5.jpg?t=pascal+%E9%9A%BE%E9%A2%98%E7%BB%99%E5%87%BA%E4%B8%80%E4%B8%AA%E5%A4%9A%E4%BD%8D%E6%95%B0N%EF%BC%88%E4%B8%8D%E8%B6%85%E8%BF%87240%E4%BD%8D%EF%BC%89%2C%E4%BB%8E%E4%B8%AD%E5%88%A0%E9%99%A4S%E4%B8%AA%E6%95%B0%E5%AD%97%EF%BC%88%E4%B8%8D%E8%B6%85%E8%BF%87200%E7%9A%84%E6%AD%A3%E6%95%B4%E6%95%B0%EF%BC%89%2C%E8%A6%81%E6%B1%82%E5%88%A0%E9%99%A4%E5%90%8E%E7%9A%84N%E6%8C%89%E5%8E%9F%E6%AC%A1%E5%BA%8F%E7%BB%84)
____这道题不妨用贪心的思想解决.
____我们可以从高到低考察原数的每一位,对于剩余的删除次数枚举删除的次数,可以不删.在所有的可能情况中选择删除后当前位最小的情况.如果有多种情况满足最优情况,则选择删除最少的.如果最终删除剩余次数大于零,则从数串末尾删除剩余的位数.最后输出.
附上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
____我们可以从高到低考察原数的每一位,对于剩余的删除次数枚举删除的次数,可以不删.在所有的可能情况中选择删除后当前位最小的情况.如果有多种情况满足最优情况,则选择删除最少的.如果最终删除剩余次数大于零,则从数串末尾删除剩余的位数.最后输出.
附上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位幸运数.问这样的