+ - ন্যাপস্যাক সমস্যা


9

একটি ওজন এবং মান সহ প্রতিটি আইটেমের সেট দেওয়া, সংগ্রহে অন্তর্ভুক্ত করার জন্য প্রতিটি আইটেমের সংখ্যা নির্ধারণ করুন যাতে মোট ওজন একটি প্রদত্ত সীমা থেকে কম বা সমান হয় এবং মোট মান যতটা সম্ভব বড় হয়।

আরও তথ্যের জন্য উইকিপিডিয়া

উদাহরণস্বরূপ, আপনাকে সর্বোচ্চ ওজন দেওয়া যেতে পারে 15 এবং মান / জনসাধারণের সাথে অবজেক্টগুলি [5,2], [7,4] [1,1]এবং আপনাকে আউটপুট হবে [7,0,1]যা [5 <value>, 2 <mass>]objects বস্তুর এবং ৩ [1 <value>, 1 <mass>]object এর স্কোরের জন্য 1 অবজেক্ট।

বিধি

ইনপুট যে কোনও যুক্তিসঙ্গত বিন্যাসে নেওয়া যেতে পারে

আউটপুট এছাড়াও নমনীয় ফর্ম্যাট,

আপনি স্ট্যান্ডার্ড না এমন লাইব্রেরি ব্যবহার করতে পারবেন না। প্রাথমিক সেটআপ থেকে আলাদাভাবে কোনও লাইব্রেরি ব্যবহার করতে যদি আপনাকে ইনস্টল করতে বা ডাউনলোড করতে হয় তবে তা অনুমোদিত নয়

বস্তুর নেতিবাচক ভর এবং মান থাকতে পারে (যেমন -1, -1)

অনুকূল উত্তর প্রয়োজন

জয়লাভ

সংক্ষিপ্ততম কোড জিতেছে

নেতিবাচক ভর এবং মান?

এটি এই চ্যালেঞ্জের একটি মূল অঙ্গ। বলুন আপনার আইটেম (ভর, মান) [4,3],[-1,-1]এবং 15 ব্যাগ ক্ষমতা সহ একটি ব্যাগ রয়েছে। আপনি প্রথমটির 3 টি রেখে স্কোর 9 করতে পারেন বা প্রথমটির মধ্যে 4 এবং 1 -1 এর একটি রাখতে পারেন 11 স্কোর জন্য আপত্তি।



আমরা কি ধরে নিতে পারি যে কোনও বস্তুর অ-ধনাত্মক ভর থাকবে না?
হাইপারনিউটারিনো

@ হাইপার নিউট্রিনো সম্পাদনাগুলির জন্য এক সেকেন্ড অপসারণ করছেন
ক্রিস্টোফার

2
আমরা কি অনুমান করতে পারি যে সবকিছুই একটি পূর্ণসংখ্যা? এছাড়াও, আমাদের কি [[2, 1], [-1, -1]] এর মতো মামলা মোকাবেলা করতে হবে যেখানে মোট মানটি নির্বিচারে বড় করা যায়?

5
শিরোনামটি বিভ্রান্তিকর। নেতিবাচক ওজনের কারণে এটি ন্যাপস্যাক সমস্যা নয় তবে রৈখিক প্রোগ্রামিং সমস্যার একটি ভিন্নতা।
এনএনজি

উত্তর:


2

পাইথ, 18 বাইট

h.MshMZfghQseMTy*F

[মান, ওজন] জোড়গুলির তালিকা হিসাবে আউটপুট। Horrendously অদক্ষ, কিন্তু এটা হয় দ্বারা NP-সম্পূর্ণ।
এখানে চেষ্টা করুন

ব্যাখ্যা

h.MshMZfghQseMTy*F
               y*FQ  Get all sets with up to <capacity> of each item.
       fghQseMT      Choose the sets whose total weight fits in the bag.
 .MshMZ              Choose those with the highest value.
h                    Take the first.
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.