চূড়ান্ত সংখ্যায় তালিকাটি হ্রাস করুন


9

ইনপুট

সংখ্যার একটি তালিকা (অ্যারে), বা সংখ্যাযুক্ত স্ট্রিং যদি এটি আরও সহজ করে। আপনি ধরে নিতে পারেন তালিকায় সর্বদা কমপক্ষে দুটি উপাদান থাকবে এবং প্রতিটি উপাদান একটি প্রাকৃতিক সংখ্যা হবে (শূন্যের চেয়ে বড় পূর্ণসংখ্যা)।

আউটপুট

একটি একক সংখ্যা বা আবার একটি সংখ্যার স্ট্রিং।

সমস্যা

ধারণাটি হ'ল তালিকার বর্তমান পর্যায়ে বৃহত্তম সংখ্যার শেষ সংখ্যাটি সরিয়ে সংখ্যার তালিকা হ্রাস করা, শেষ পর্যন্ত একটি সংখ্যার সাথে শেষ হওয়া (একাধিক উদাহরণ থাকলেও কেবলমাত্র একটি নম্বর ফেরত দেওয়া উচিত)

উদাহরণ

[123,343,121,76,465,786] -- The last digit in 786 is dropped, so it becomes 78
[123,343,121,76,465,78]  -- New largest number is 465, so the 5 is dropped, making it 46
[123,343,121,76,46,78]   -- Repeat until left with one number
[123,34,121,76,46,78]
[12,34,121,76,46,78]
[12,34,12,76,46,78]
[12,34,12,76,46,7]
[12,34,12,7,46,7]
[12,34,12,7,4,7]
[12,3,12,7,4,7]
[1,3,1,7,4,7]            -- If there are multiple max numbers, you **must** remove the last digit from all of them
[1,3,1,4]
[1,3,1]
[1,1]                    -- You have your answer when there is one number, or multiple numbers that are equal
1                        -- Result

সমস্যা

স্ট্যান্ডার্ড লুফোলস প্রযোজ্য

অন্যান্য বাধা

আপনার প্রোগ্রামটি অবশ্যই এলোমেলো সংখ্যার কোনও তালিকার জন্য কাজ করবে (অবশ্যই কারণের মধ্যে)

পরীক্ষার কেস

[24,72,4]
[24,7,4]
[2,7,4]
[2,4]
[2]
2

[14, 7]
[1, 7]
[1]
1

[1278,232,98273,2334]
[1278,232,9827,2334]
[1278,232,982,2334]
[1278,232,982,233]
[127,232,982,233]
[127,232,98,233]
[127,232,98,23]
[127,23,98,23]
[12,23,98,23]
[12,23,9,23]
[12,2,9,2]
[1,2,9,2]
[1,2,2]
[1]
1

স্কোরিং

এই , তাই প্রতিটি ভাষায় সংক্ষিপ্ত উত্তর জয়!


1
আমি যদি কিছু মিস করি তবে দয়া করে আমাকে জানান। প্রথম প্রশ্ন.
হেনরি

14
জানিনা যদি এটি পরিবর্তন করতে খুব দেরি হয়ে গেছে, কিন্তু প্রশ্ন সবচেয়ে ভালো হতে পারে যদি আমরা হয়নি আউটপুট প্রতিটি পর্যায়ে আছে। আমি মনে করি উত্তরগুলি অন্যথায় অন্যথায় বেশ সোজা হবে।
DLosc

8
যেহেতু অন্য কেউ এটি উল্লেখ করেনি, এটি এই জাতীয় জিনিস যা ঘন ঘন বালির বাক্সে ধরা পড়ত ।
জেমস

1
উত্তরটি তালিকার প্রথম প্রবেশের প্রথম সংখ্যা নয় যেখানে আপনি টেস্টকেসগুলি যুক্ত করতে পারেন?
জেএডি

5
আমি এই প্রশ্নের উত্তরটি যেভাবে পড়েছি তা [12, 123, 124]হ'ল 12যা প্রতিটি পোস্টের উত্তরকে ভুল করে
janrjan জোহানসেন

উত্তর:






3

জাপট , 8 6 5 বাইট

-1 বাইট @ শ্যাগিকে ধন্যবাদ thanks

n g g

সংখ্যার স্ট্রিংগুলির একটি অ্যারে হিসাবে ইনপুট নেয়। এটি অনলাইন চেষ্টা করুন!

ব্যাখ্যা

        // implicit input: array of strings
n       // sort the array
  g     // get the first element
    g   // get the first character
        // implicit output

5 বাইট : অ্যারে বাছাই করুন, প্রথম উপাদানটি পান, প্রথম অক্ষর পান।
শেগি

@ শেগি ওহ দুহ, আমি একে একে জটিল করে ফেলেছি। ধন্যবাদ!
জাস্টিন মেরিনার 14

কোনও সমস্যা নেই :) n v g5 বাইটের জন্যও কাজ করবে। যাইপাতে স্বাগতম।
শেগি

2


@ অলিভিয়ারগ্রোওয়ের: কিভাবে? অর্ডারে অঙ্কগুলি অপসারণ করা প্রত্যাশায় 1-এ3,2,2,2,1 ফলাফল করে ।
এমিগিনা


2

পিএইচপি , 45 বাইট

<?foreach($_GET as$v)$r[]=$v[0];echo min($r);

এটি অনলাইন চেষ্টা করুন!



@ অলিভিয়েরগ্রোগোয়ার [12,23,12] -> [12,2,12] -> [1,2,12] -> [1,2,1] -> [1,1] -> [1] -> 1 আমার মতে সঠিক
জার্গ হালসারম্যান


2

ভি , 11 , 5 বাইট

ÚxV}p

এটি অনলাইন চেষ্টা করুন!

আমি আসলে এই ওয়াএটিকে আরও জটিল করে তুলছি । এই উত্তরটি প্রতিটি লাইনে ASCII মান অনুসারে বাছাই করে এবং তারপরে খুব প্রথম অক্ষরটি প্রদান করে। যেহেতু এটি দয়ালু বা বিরক্তিকর উত্তর, এখানে আরও একটি আকর্ষণীয় উত্তর যা প্রকৃতপক্ষে বর্ণিত অ্যালগরিদমকে বাস্তবায়িত করে:

ভি , 11 বাইট

òún
/äîä
Lx

এটি অনলাইন চেষ্টা করুন!


আমি প্রশ্ন জিজ্ঞাসা যখন আমি খুব ছিল। আপনার আসল উত্তরটি আমি দেখতে সবচেয়ে বেশি প্রত্যাশিত ছিল। হতাশাজনক।
হেনরি

2

জেলি ,  3  2 বাইট

ṂḢ

একটি পূর্ণাঙ্গ প্রোগ্রাম যা অক্ষরের তালিকার একটি তালিকা (স্ট্রিং) নেয় এবং ফলাফলটি মুদ্রণ করে।

এটি অনলাইন চেষ্টা করুন!

কিভাবে?

আমাদের কেবলমাত্র সর্বনিম্ন শীর্ষস্থানীয় অঙ্কটি ফিরিয়ে আনতে হবে ...

ṂḢ - Main link: list of lists of characters
Ṃ  - minimum (lexicographical ordering ensures this will start with the minimal digit)
 Ḣ - head (get that first digit character)

কোনও সমস্যা নেই, এটি ঘটে।
জোনাথন অ্যালান

2

জাভাস্ক্রিপ্ট (ES6), 17 বাইট

স্ট্রিংগুলির অ্যারে হিসাবে ইনপুট নেয়।

a=>a.sort()[0][0]

চেষ্টা করে দেখুন

কমা দ্বারা পৃথক হওয়া সংখ্যার তালিকা ইনপুট করুন।

o.innerText=(f=
a=>a.sort()[0][0]
)((i.value="1278,232,98273,2334").split`,`);oninput=_=>o.innerText=f(i.value.split`,`)
<input id=i><pre id=o>



1

ব্রেনল্ফ , 17 বাইট

VVR{Mvd<M&$_R}vvx

এটি অনলাইন চেষ্টা করুন!

ব্যাখ্যা

VVR{Mvd<M&$_R}vvx  Implicit input from commandline args
VVR                Create stack2 and stack3, return to stack1
   {.........}     Foreach item in stack..
    M              ..Move item to next stack
     v             ..Switch to next stack
      d            ..Split item into digits
       <M          ..Move first item to next stack
         &$_       ..Clear stack
            R      ..Return to stack1
              vv   Switch to stack3
                x  Reduce to lowest value
                   Implicit output of last item on stack

অন্য কথায়, এটি প্রতিটি আইটেমের কেবল প্রথম অঙ্কের সমন্বয়ে একটি স্ট্যাক তৈরি করে, তারপরে সর্বনিম্ন আউটপুট দেয়।

এই চ্যালেঞ্জটি আমাকে বিল্টিনদের ব্রাইংলফের সাথে যুক্ত করার জন্য একগুচ্ছ দরকারী ধারণাগুলি দিয়েছে এবং এখন "বিশেষ" ফোরচ লুপ যোগ করার জন্য ধন্যবাদ, ব্রাইংলফ এটি 5 বাইটে করতে পারেন:

ব্রেনল্ফ , 5 বাইট [প্রতিদ্বন্দ্বী]

(d<)x

ব্যাখ্যা

(d<)x  Implicit input from commandline args
(..)   Special foreach loop, iterates over the stack, moving each item to a special
       Sandboxed stack environment, and prepends the last item of the sandboxed
       stack to the real stack at the end of each iteration
 d<    Split into digits, move first digit to end of stack
    x  Reduce to lowest value
       Implicit output of last item on stack

এটি অনলাইন চেষ্টা করুন!

আমি সাধারণত builtins যোগ বিরুদ্ধে নই শুধু সম্পূর্ণ এক চ্যালেঞ্জ, কিন্তু আমি নতুন জন্য ব্যবহার সম্পর্কে একটি আধিক্য দেখতে পারেন (...)foreach লুপ, তাই আমি সত্যিই এটা শুধু এই চ্যালেঞ্জ জন্য একটি বৈশিষ্ট্য যোগ করার বিষয়টি বিবেচনা করবেন না।


ব্যর্থ [12,23,12]। প্রত্যাশিত আউটপুট 2, আপনি ফিরে এসেছেন 1
অলিভিয়ার গ্রাগোয়ার

@ অলিভিগ্রগ্রোয়েয়ার এর প্রত্যাশিত আউটপুটটি হ'ল 1:[12,23,12] > [12,2,12] > [1,2,1] > [1,1]
স্কিডদেব



0

পিপ , 5 বাইট

কমান্ড-লাইন আর্গুমেন্ট হিসাবে ইনপুট সংখ্যাগুলির তালিকা নেয়।

@@SSg

এটি অনলাইন চেষ্টা করুন!

অথবা:

MN@Zg

এটি অনলাইন চেষ্টা করুন!

ব্যাখ্যা

উভয় প্রোগ্রামে, gকমান্ড-লাইন আর্গের তালিকা রয়েছে।

@@SSg

SSস্ট্রিং তুলনা ব্যবহার করে বাছাই করে, এর ফলে তার परिमाण নির্বিশেষে প্রথমে ক্ষুদ্রতম প্রথম সংখ্যাগুলির সাথে সংখ্যাগুলি রাখে। ইউনারি @একটি তালিকা বা স্কেলারের প্রথম উপাদান দেয়। বাছাইয়ের পরে প্রথম সংখ্যার প্রথম সংখ্যা পেতে আমরা এটি দুটিবার প্রয়োগ করি।

    g  [24 72 491]
  SS   [24 491 72]
 @     24
@      2

অথবা:

MN@Zg

Zজিপ হয়; এর unary সংস্করণ একটি তালিকা স্থানান্তর করতে ব্যবহার করা যেতে পারে। স্থানান্তরিত তালিকার প্রথম উপাদানটি হ'ল সমস্ত সংখ্যার প্রথম সংখ্যাগুলির একটি তালিকা। @অঙ্কের তালিকা পায়; MNএটি সর্বনিম্ন লাগে।

    g  [24 72 491]
   Z   [[2 7 4] [4 2 9]]
  @    [2 7 4]
MN     2

0

পিএইচপি, 27 বাইট

<?=substr(max($_GET),0,-1);

(বাহ, পুরোপুরি প্রশ্নটি ভুল বুঝেছিল This এটি কাজ করে না later পরে সম্পাদনা করবে))




আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.