请在整数n=742683613984中删除8个数字,使得余下的数字按原次序组成的新数最小.要求如下:
来源:学生作业帮助网 编辑:作业帮 时间:2024/08/30 06:42:26
![请在整数n=742683613984中删除8个数字,使得余下的数字按原次序组成的新数最小.要求如下:](/uploads/image/z/11455643-11-3.jpg?t=%E8%AF%B7%E5%9C%A8%E6%95%B4%E6%95%B0n%3D742683613984%E4%B8%AD%E5%88%A0%E9%99%A48%E4%B8%AA%E6%95%B0%E5%AD%97%2C%E4%BD%BF%E5%BE%97%E4%BD%99%E4%B8%8B%E7%9A%84%E6%95%B0%E5%AD%97%E6%8C%89%E5%8E%9F%E6%AC%A1%E5%BA%8F%E7%BB%84%E6%88%90%E7%9A%84%E6%96%B0%E6%95%B0%E6%9C%80%E5%B0%8F.%E8%A6%81%E6%B1%82%E5%A6%82%E4%B8%8B%3A)
请在整数n=742683613984中删除8个数字,使得余下的数字按原次序组成的新数最小.要求如下:
请在整数n=742683613984中删除8个数字,使得余下的数字按原次序组成的新数最小.要求如下:
请在整数n=742683613984中删除8个数字,使得余下的数字按原次序组成的新数最小.要求如下:
我学的是pascal,所以你还得改一改.
var len,k,i,j,s:longint;
st,n:string;
begin
n:='742683613984';
for i:=1 to 12 do st:=st+' ';
for i:=12 downto 1 do
begin (将st赋值n)
st[i]:=n[i];
end;
len:=length(st);
for j:=1 to 8 do (删数字:从前往后,
for i:=2 to len do 如果比前一位大,
if st[i]
1384
(1在这个数中最小放在千位;后剩下13984,在这五个数中9最大去掉,得最小1384)
最小的数:1384
分析:n=742683613984
要最小,则先要让首位最小,首位最小是1
后面最大的9去掉就好了
我的思路是这样编写程序的哈,首先要从左到有要一个最小的数字。又要4位数 还要按原来的顺序。所以就是前9个数字比较。找一个最小的,然后就是这个数字的后面的比较还是这个思路,,要3个数了 所以就只有后面两个数比较 找最小的 最后就找出来了...
全部展开
我的思路是这样编写程序的哈,首先要从左到有要一个最小的数字。又要4位数 还要按原来的顺序。所以就是前9个数字比较。找一个最小的,然后就是这个数字的后面的比较还是这个思路,,要3个数了 所以就只有后面两个数比较 找最小的 最后就找出来了
收起
共:12位数,所以
留下4个数
要想最小所以
尽量留小的数
所以
千位是1,从而
最小的数为:1384