অলস মাইক্রোওয়েভ ইনপুট উত্পন্ন করুন


18

সম্পর্কিত: আমার মাইক্রোওয়েভ ওভেন প্রোগ্রাম এবং অলস মান উত্পন্ন

আমার সহকর্মী এতটাই অলস যে মাইক্রোওয়েভ ওভেনের প্রোগ্রামিং করার সময় তিনি নিজের আঙ্গুলটি সরাতেও বিরত হন না। (এটি আসলে সত্য!)

তাকে মাইক্রোওয়েভ ইনপুট সন্ধান করতে সহায়তা করুন যা তার যা চায় তার চেয়ে নিকটে সময় দেয় তবে যেখানে সমস্ত অঙ্ক একই থাকে। যদি দুটি ইনপুটগুলি কাঙ্ক্ষিত সময় থেকে একই সময়ের পার্থক্যের ফলস্বরূপ হয় তবে কম সংখ্যাসহ একটি বেছে নিন। উভয়ের যদি একই সংখ্যার সংখ্যা থাকে তবে কম পছন্দ করুন - তাই তাকে এত দিন অপেক্ষা করতে হবে না।

ইনপুট হ'ল পূর্ণসংখ্যা যা কোনও পারফেকশনিস্ট প্রবেশ করবে, উদাহরণস্বরূপ 4304 মিনিট 30 সেকেন্ড 100এবং 60প্রত্যেকটি 1 মিনিট। এটি 0 এর চেয়ে বেশি হবে এবং 9999 এর বেশি হবে না।

আউটপুট অবশ্যই একটি পূর্ণসংখ্যার, যেমন 4444 মিনিট এবং 44 সেকেন্ড এবং 5555 সেকেন্ড।

ইনপুট এবং আউটপুট উভয়ই কেবলমাত্র সেকেন্ডে (কোনও মিনিট নয়) হতে পারে যদি মোট সময়টি 1 মিনিট এবং 40 সেকেন্ডের নীচে থাকে।

এটি , সুতরাং আপনার কোডটি যতটা সম্ভব সংক্ষিপ্ত হতে হবে।

পরীক্ষার কেস:

  30 →   33
  60 →   55
  70 →  111
  90 →   88
 100 →   55
 101 →   66
 120 →   77
 130 →   88
 200 →   99
 201 →  222
 500 →  444
 700 →  666
1000 →  888
1055 →  999
1056 → 1111
1090 → 1111

3
আমি অর্ধ-অলস পদ্ধতির পছন্দ করি। এটি না হওয়া পর্যন্ত কেবল "30 সেকেন্ড যুক্ত করুন" বোতামটি
জালিয়ে রাখুন

@ জিওবিটস 11:30 টা অবধি প্রচুর প্রেসে। যাইহোক, আসল বিষয়টি হ'ল তিনি উপরে যে পদ্ধতিটি লিখেছেন তা ব্যবহার করে ... :
ডি

2
হ্যাঁ, আমি সাধারণত এটি কয়েক মিনিটের জন্য যেকোন কিছুতে টাইপ করি। এটি প্রেসের সংখ্যা এবং আঙুলের ভ্রমণের দূরত্বের মধ্যে একটি সূক্ষ্ম বাণিজ্য;)
জিওবিটস

# সেকেন্ডের ইনপুট / আউটপুট অনুমোদিত?
ক্যালকুলেটরফলাইন

2
আমার সহকর্মী এতটাই অলস যে মাইক্রোওয়েভ ওভেনের প্রোগ্রামিং করার সময় তিনি নিজের আঙ্গুলটি সরাতেও বিরত হন না। ডায়ালগ এপিএল সদর দফতরে কাজ করা কারও কাছ থেকে কোনও কম প্রত্যাশা করেননি ... :)
লিন

উত্তর:



2

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

n=>{c=n=>n*3+n%100*2;d=n=c(n);for(r=i=0;i<1e4;i++)/^(.)\1*$/.test(i)&(m=c(i)-n,m<0?m=-m:m)<d&&(d=m,r=i);return r}

একটি সহায়ক ফাংশন ব্যবহার করে cযা বিগত সেকেন্ডের প্রকৃত সংখ্যার পাঁচগুণ গণনা করে।


1

ডায়ালগ এপিএল , 37 বাইট

{⍵⊃⍨⊃⍋⊃|-/(60⊥0 100∘⊤)¨⎕⍵}⍎¨,⎕D∘./⍨⍳4

⍳41 2 3 4
⎕D"0123456789"
∘./⍨পুনরাবৃত্তি সারণী (একটি গুণ টেবিলের মতো, তবে যেখানে প্রতিটি ঘরে A × B এর পরিবর্তে A এর B পুনরাবৃত্তি রয়েছে)
,স্ট্রিংয়ের তালিকায় টেবিল
⍎¨তৈরি করে প্রতিটি স্ট্রিংকে সংখ্যায় পরিণত করুন (এখন আমাদের সমস্ত সম্ভাব্য তালিকা রয়েছে) ফলাফল।)
{}ফাংশন যেখানে
⎕⍵প্রম্পটেড ইনপুট দিয়ে আর্গুমেন্ট পূর্বের আর্গুমেন্ট দ্বারা প্রতিনিধিত্ব করা হয়
(... দুটির প্রত্যেকের জন্য প্রয়োগ করুন (যুক্তি এবং তালিকা) ... বেস -60 থেকে রূপান্তর
0 100∘⊤100-কে
60⊥রূপান্তর
-/করুন দুটি
|পরম্পরের মধ্যে পার্থক্য গণনা করুন মান
নিষ্কাশন তালিকা (কারণ -/এর ফলাফল encapsulated)
সাজানোর ক্রম (বাছাই করে না, কেবল ক্রমটি সাজায় যাতে আরোহী ক্রম অর্জনের জন্য আর্গুমেন্টগুলি রাখে to দুটি উপাদান সমান হলে তারা বর্তমান ক্রমে থাকে Since যেহেতু আমাদের তালিকায় ক্রমবর্ধমান দৈর্ঘ্যের উপাদান রয়েছে তাই এটি সম্পর্কগুলির যত্ন নেয়))
প্রথমটি, উদাহরণস্বরূপ, ইনপুট থেকে ক্ষুদ্রতম পরম পার্থক্য সহ ⍵⊃⍨একটি যুক্তি তালিকা থেকে সম্ভাব্য উপাদানটি নিয়ে যায় (সম্ভাব্য ফলাফলের তালিকা)

এক বাইট বন্ধ করে দেওয়ার জন্য প্রশ্নে থাকা সহকর্মীকে ধন্যবাদ।


দ্রষ্টব্য: ওপি পোস্ট করার সময় আমার কোনও সমাধান হয়নি।

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