จำนวนมากที่สุดและน้อยที่สุด

Vedant Kandoi 11/15/2018. 10 answers, 2.191 views
code-golf

งาน

เมื่อกำหนดจำนวนที่ไม่เป็นลบให้เอาต์พุตจำนวนที่มากที่สุดและน้อยที่สุดที่สามารถเกิดขึ้นได้โดยการรวมเข้ากับพวกเขา

กฎระเบียบ

อินพุตเอาต์พุตสามารถอยู่ในรูปแบบที่สะดวก

อาร์เรย์อาจมีจำนวนทศนิยมไม่เกิน 1 รายการ

ตัวอย่าง

input:[22,33,44,55.55,33]
output:4433332255.55,55.5522333344

input:[34,900,3,11,9]
output:990034311,113349009

input:[99.93,9,3,39]
output:939399.93,99.933399

input:[45.45,45,45,45]
output:45454545.45,45.45454545

input:[12,21,34,43,45.1]
output:4334211245.1,45.112213443 

นี่คือ code-golf เพื่อให้ได้รหัสที่สั้นที่สุด

10 Answers


TFeld 11/15/2018.

Python 2 , 84 80 78 76 ไบต์

 lambda a:[''.join(sorted(a,key=lambda s:'.'in s or s+s)[::i])for i in[-1,1]] 

ลองออนไลน์!

-2 ไบต์ขอบคุณ Arnauld


Emigna 11/15/2018.

05AB1E , 11 ไบต์

œJΣ'.¡ï}Á2£ 

ลองออนไลน์! หรือเป็น ชุดทดสอบ

Explanation

œ             # get permutations of input
  J            # join each
   Σ    }      # sort by
    '.¡        # splitting into [before decimal, after decimal]
       ï       # and converting each to int
         Á     # rotate the result right
          2£   # and take the first 2 values 

Arnauld 11/15/2018.

JavaScript (ES6), 68 66 ไบต์

 a=>[1,-1].map(n=>a.sort((a,b)=>[a%1||a]+b<[b%1||b]+a?n:-n).join``) 

ลองออนไลน์!

อย่างไร?

เราใช้การทดสอบต่อไปนี้เพื่อเปรียบเทียบสองค่าในอาร์เรย์อินพุต:

 [a % 1 || a] + b < [b % 1 || b] + a 

นิพจน์ x % 1 || x x % 1 || x ส่งคืนส่วนทศนิยมของ \ $ x \ $ ถ้า \ $ x \ $ เป็นตัวเลขทศนิยมหรือไม่ระบุ \ $ x \ $ ไม่เช่นนั้น

นิพจน์ [x % 1 || x] + y [x % 1 || x] + y เชื่อมโยงผลลัพธ์ข้างต้นกับสตริงและเชื่อมโยงกับค่าอื่น

หากมีตัวเลขทศนิยมในรายการจะต้องถูกพิจารณาว่าเป็นค่าที่เล็กที่สุดเสมอ ด้วยการใช้การแปลงของเราตัวเลขทศนิยมจะกลายเป็นสตริงที่ขึ้นต้นด้วย "0." ซึ่งเรียงลำดับตามพจนานุกรมก่อนสิ่งอื่นใด

Examples:

a |   b | [a%1||a]+b | [b%1||b]+a
----+-----+------------+------------
  4 |   5 | "45"       | "54"
 10 |  11 | "1011"     | "1110"
  8 |  80 | "880"      | "808"
  7 | 9.5 | "79.5"     | "0.57" 

Shaggy 11/15/2018.

Japt, 14 11 ไบต์

á m¬ñn é v2 

ลองมัน

บันทึกได้ 1 ไบต์ขอบคุณ Luis โปรด +1 โซลูชันของเขาด้วย

á               :Permutations
  m             :Map
   ¬            :  Join
    ñ           :Sort by
     n          :  Converting each to a number
       é        :Rotate right
         v2     :Remove & return the first 2 elements 

Japt , 14 11 10 ไบต์

á m¬ñn gJò 

ลองออนไลน์!


Erik the Outgolfer 11/15/2018.

เยลลี่ 6 ไบต์

Œ!VṢ.ị 

ลองออนไลน์!

คำอธิบาย:

Œ!VṢ.ị Arguments: x
Œ!     Permutations of x
  V    Concatenate the representations of each permutation's elements and evaluate the result as Jelly code
   Ṣ   Sort
    .ị Get element at index 0.5, i.e. elements at indices 0 (last) and 1 (first) 

Travis 11/16/2018.

Ruby , 56 45 ไบต์

 ->aNO 

ลองออนไลน์!

-11 ไบต์ขอบคุณจอร์แดน


Sok 11/15/2018.

Pyth, 13 12 ไบต์

hM_BSvsM.p`M 

เอาต์พุตในรูปแบบ [smallest, largest] ลองออนไลน์ได้ ที่นี่ หรือตรวจสอบกรณีทดสอบทั้งหมดในครั้งเดียว ที่นี่

hM_BSvsM.p`MQ   Implicit: Q=eval(input())
                Trailing Q inferred
          `MQ   Stringify all elements of Q
        .p      Generate all permutations of the above
      sM        Concatenate each permutation
     v          Evaluate each as a number
    S           Sort them
  _B            Pair the sorted list with its reverse
hM              Take the first element of each, implicit print 

แก้ไข: บันทึกไบต์โดยนำการทำให้เป็นสตริงออกจากฟังก์ชันการแมป รุ่นก่อนหน้า: hM_BSmvs`Md.p


nwellnhof 11/15/2018.

Perl 6 , 41 ไบต์

 {.max,.min}o+<<*.permutations.map(*.join) 

ลองออนไลน์!

ทางเลือก:

 {.max,.min}o+<<*.permutations.map:{.join}
{.max,.min}o{[map +*.join,.permutations]}
{.max,.min}o{+< 

BMO 11/15/2018.

Husk ขนาด 10 ไบต์

§,▼▲morṁsP 

ลองออนไลน์ หรือ ตรวจสอบทั้งหมด!

คำอธิบาย

§,▼▲m(rṁs)P  -- example input: [2,3,1.1]
          P  -- permutations: [[2,3,1.1],[3,2,1.1],[1.1,3,2],[3,1.1,2],[1.1,2,3],[2,1.1,3]]
    m(   )   -- map the following
                (example with [1.1,2,3])
       ṁs    -- | show each and join: "1.123"
      r      -- | read: 1.123
             -- : [231.1,321.1,1.132,31.12,1.123,21.13]
§,           -- fork and join as tuple
  ▼          -- | min: 1.123
   ▲         -- | max: 321.1
             -- : (1.123,321.1) 

HighResolutionMusic.com - Download Hi-Res Songs

1 AJR

Birthday Party flac

AJR. 2019. Writer: Adam Met;Jack Met;Ryan Met;Peter Ivers;David Lynch.
2 Loote

Your Side Of The Bed flac

Loote. 2018. Writer: ​Jesse Saint John;Jackson Foote;Emma Lov Block.
3 AJR

100 Bad Days flac

AJR. 2019. Writer: Jack Met;Adam Met;Ryan Met.
4 Joe Jonas

Longer Than I Thought flac

Joe Jonas. 2018. Writer: Patrick Nissley;Jackson Foote;Dave Katz.
5 Loote

Out Of My Head flac

Loote. 2018. Writer: Emma Lov Block;Michael Pollack;Jeremy Dussolliet;Jackson Foote.
6 Iselin Solheim

Anyone Out There flac

Iselin Solheim. 2019. Writer: Iselin Solheim;Max Grahn.
7 Loote

Wish I Never Met You flac

Loote. 2018. Writer: Jackson Foote;Alex Peter Koste;Jeremy Dussolliet;Emma Lov Block.
8 Kim Petras

Heart To Break flac

Kim Petras. 2018. Writer: Cirkut;Aaron Joseph;Dr. Luke;Jacob Kasher;Kim Petras.
9 A L E X

Out On The Trampoline At Night flac

A L E X. 2018. Writer: A L E X.
10 A L E X

I Want To Hold Your Hand flac

A L E X. 2018. Writer: A L E X.
11 A L E X

Field flac

A L E X. 2018. Writer: A L E X.
12 A L E X

Save Me flac

A L E X. 2018. Writer: A L E X.
13 Devin

Summer Lover flac

Devin. 2019. Writer: Tommy Lee James;Stuart Crichton;Oliver Heldens;Nile Rodgers;Devin Guisande.
14 A L E X

9 To 5 flac

A L E X. 2018. Writer: A L E X.
15 A L E X

Skirt flac

A L E X. 2018. Writer: A L E X.
16 Florian Picasso

Midnight Sun (Extended Version) flac

Florian Picasso. 2019.
17 Florian Picasso

Midnight Sun flac

Florian Picasso. 2019.
18 21 Savage

Enzo flac

21 Savage. 2019. Writer: YungLunchBox;Sheck Wes;Offset;Gucci Mane;21 Savage;DJ Snake.
19 Tales Of Ratatösk

Battle Of The Doomed Gods 320kbps

Tales Of Ratatösk. 2019.
20 Tales Of Ratatösk

Andro 320kbps

Tales Of Ratatösk. 2019.

Related questions

Hot questions

Language

Popular Tags