গল্পটি
"২০১?? ঠিক আছে," খেলনা বিক্রেতা হিলবার্টকে বকবক করেছে। সে চোখ খুলল, তার কানের থেকে সালাদ ড্রেসিং ট্রিকলিং মুছল এবং সকালের কিক-স্টার্ট ক্রেমিশনিট খেয়ে ফেলল। উদাহরণ ছুটির দিন। তাকে এখনই কাজ করতে হবে এবং বছরের হিসাব শেষ করতে হবে।
ক্রিসমাস বিশেষত তার বিক্রয়ের জন্য বছরের একটি খুব ফলনকালীন সময়। হিলবার্ট ঠিক কীভাবে এটি কাজ করে তা জানেন: একজন ব্যক্তি একটি দোকানে এসে তাদের দেওয়া প্রথম উপহার কিনে। তারা এর জন্য অর্থ প্রদান করে এবং অন্য দোকানে চলে যায়। বাস্তবে, উপহারটি আসলে কী তা আসলে কোনও পার্থক্য করে না। দামটিও অপ্রাসঙ্গিক, শর্ত থাকে যে এটি খুব বেশি না হয়। এটি সমস্ত ক্রিসমাস পর্যন্ত অবশিষ্ট সময় নির্ভর করে - সময় যত কম হয়, গ্রাহকদের অনুশোচনা তত বেশি হয়, তারা যে পরিমাণ মূল্য দিতে আগ্রহী হয়।
হিলবার্টের জন্য তার ঘড়িটি দেখার জন্য যা দরকার তা হ'ল - এবং তার গ্রাহকরা কতটা ব্যয় করতে পারবেন তা এখনই তিনি জানেন। তিনি সহজেই এই সত্যটির সুবিধা নিতে পারেন: তিনি কেবলমাত্র প্রদত্ত গ্রাহকের কাছে বিক্রয় করতে পারেন এমন সবচেয়ে ব্যয়বহুল উপহারটি খুঁজে পান এবং তাদের কাছে এটি অফার করেন। কেবল এখন তিনি বুঝতে পেরেছেন যে তিনি গত বছর এই ধূর্ত কৌশলটি নিয়োগ করতে ভুলে গিয়েছিলেন। যদিও এটি পরিবর্তন হবে!
তবুও, হিলবার্ট জানতে চান তার ব্যবসায় কতটা প্রসার লাভ করেছে, যদি তিনি বাস্তবে তাঁর মহাপরিকল্পনাটি ব্যবহার করে থাকেন। তিনি তার দোকানে আসা লোকদের একটি তালিকা একসাথে রাখতে পেরেছেন, তবে তিনি নিশ্চিত হন না যে সেগুলি কী পরিমাণ অর্থ উপার্জন করতে পারে।
আপনার কাজ (টিএল; ডিআর)
ইনপুট হল একটি নিয়ে গঠিত আরোহী প্রাপ্তিসাধ্য উপহার দাম তালিকা এবং গ্রাহকদের বাজেটের একটি তালিকা। বাজেটের তালিকাটি গ্রাহকরা দোকানে আসার সাথে সাথে একই ক্রমে রয়েছে - এই শর্ত সহ যে প্রতিটি গ্রাহক কমপক্ষে আগেরটির তুলনায় কম পরিমাণে অর্থ প্রদান করতে ইচ্ছুক, অর্থ এটি আরোহীও।
প্রতিটি গ্রাহকের জন্য, তারা যে অর্থ ব্যয় করতে ইচ্ছুক সবচেয়ে দামি উপহার এবং এটির দাম নির্ধারণ করুন। বাজেটের মধ্যে কোনও উপহার পাওয়া না গেলে আউটপুট এ 0।
আপনি একটি -40%অক্ষর বোনাস পান, যদি আপনার অ্যালগোরিদমের অ্যাসিম্পটিক সময় জটিলতা হয় O(n+m)(তুচ্ছ নয় O(n*m)) ইনপুট তালিকার দৈর্ঘ্য কোথায় হয় n, mare
এটি কোড-গল্ফ , সংক্ষিপ্ততম বাইট জেতা। স্ট্যান্ডার্ড লুফোলগুলি নিষিদ্ধ করা হয়েছে।
উদাহরণ
ইনপুট:
1 2 2 2 5 7 10 20
1 1 2 3 6 6 15 21 21 22
আউটপুট:
1 0 2 2 5 2 10 20 7 0
এই কাজটি স্থানীয় প্রোগ্রামিং প্রতিযোগিতা থেকে নেওয়া হয়েছিল এবং আমার দ্বারা ইংরেজী অনুবাদ করা হয়েছিল। এখানে আসল অ্যাসাইনমেন্টটি দেওয়া হয়েছে: https://www.ksp.sk/ulohy/zadania/1131/