zoukankan      html  css  js  c++  java
  • 拼数pascal程序

    题意

    将一些是接起来,找出接的最大的数


    分析

    这题其实就是最大整数。做的时候,我们可以先把数字符串排序,从小到大,再一个一个接起来

    var
    n,i,x,j:longint;
    t:string;
    s:array[0..20]of string;
    procedure kp(l,r:longint);
    var
    i,j:longint;
    mid:string;
    begin
        if l>=r then exit;
        i:=l;j:=r;mid:=s[(l+r) div 2];
        repeat
             while s[i]>mid do inc(i);
             while s[j]<mid do dec(j);
             if i<=j then
             begin
                 s[0]:=s[i];s[i]:=s[j];s[j]:=s[0];
                 inc(i);dec(j);
             end;
        until i>j;
        kp(l,j);
        kp(i,r);
    end;
    begin
        readln(n);
        for i:=1 to n do
        begin
            read(x);
            str(x,s[i]);
        end;
        for i:=1 to n-1 do
        begin
            for j:=i+1 to n do
            begin
                if s[i]+s[j]<s[j]+s[i] then
                begin
                    t:=s[i];
                    s[i]:=s[j];
                    s[j]:=t;
                end;
            end;
        end;
        for i:=1 to n do
        write(s[i]);
    end.


  • 相关阅读:
    mv命令(转)
    Linux获得命令帮助(学习笔记五)
    Shell解释器(学习笔记四)
    rmdir 命令(转)
    Java从零开始学十八(抽象类和接口)
    rm 命令(转)
    Centos6.6系统root用户密码恢复案例(转)
    Java从零开始学十七(简单工厂)
    Java从零开始学十六(多态)
    mkdir命令(转)
  • 原文地址:https://www.cnblogs.com/YYC-0304/p/9500253.html
Copyright © 2011-2022 走看看