এই এসিএম আইসিপিসি সমস্যাটিতে আমার কিছু সহায়তা দরকার। আমার বর্তমান ধারণাটি এটিকে একটি সংক্ষিপ্ততম পথ সমস্যা হিসাবে মডেল করা, যা সমস্যার বিবৃতিতে বর্ণিত described
সমস্যা
আছে N = 1000
পারমাণবিক বর্জ্য এ একটি 1-ডি নম্বর লাইন বরাবর অবস্থিত পাত্রে স্বতন্ত্র থেকে অবস্থানের -500,000 to 500,000
ছাড়া, x=0
। একজন ব্যক্তিকে সমস্ত বর্জ্য বিনগুলি সংগ্রহ করার দায়িত্ব দেওয়া হয়। প্রতি সেকেন্ডে যে কোনও বর্জ্য ধারক সংগ্রহ করা হয় না, এটি বিকিরণের 1 ইউনিট নির্গত করে। ব্যক্তিটি শুরু হয় x = 0
এবং 1
প্রতি সেকেন্ডে ইউনিট স্থানান্তর করতে পারে , এবং বর্জ্য সংগ্রহ করতে একটি নগণ্য পরিমাণ সময় নেয়। আমরা সমস্ত পাত্রে সংগ্রহ করার সময় ন্যূনতম পরিমাণে তেজস্ক্রিয়তা খুঁজে পেতে চাই।
নমুনা ইনপুট:
4
পাত্রে অবস্থিত [-12, -2, 3, 7]
।
এই ধারকগুলি সংগ্রহের সর্বোত্তম ক্রমটি হ'ল [-2, 3, 7, -12]
নূন্যতম 50
ইউনিট নির্গমন করার জন্য । ব্যাখ্যা: ব্যক্তিটি -2
2 সেকেন্ডে যায় এবং সেই সময় 2 units
বিকিরণের সময় নির্গত হয়। তারপরে তিনি 3
(দূরত্ব 5
:) এ যান যাতে ব্যারেল 2 + 5 = 7
বিকিরণের ইউনিট প্রকাশ করে । যে ব্যারেল ইউনিট নির্গত 4
হয়েছে x = 7
সেখানে যেতে তিনি আরও সেকেন্ড সময় নেন 2 + 5 + 4 = 11
। যে ব্যারেল ইউনিট নির্গত 19
হয়েছে x = -12
সেখানে যেতে তিনি কয়েক সেকেন্ড সময় নেন 2 + 5 + 4 + 19 = 30
। 2 + 7 + 11 + 30 = 50
, যা উত্তর।
মন্তব্য
একটি সুস্পষ্ট O(N!)
সমাধান আছে। তবে, আমি লোভী পদ্ধতিগুলি যেমন নিকটতমের দিকে চলে যাওয়া বা নিকটতম ক্লাস্টারে চলে যাওয়ার মতো অন্বেষণ করেছি তবে সেগুলি কার্যকর হয়নি।
আমি এই সমস্যাটি নিয়ে বেশ কিছুক্ষণ ভেবেছি এবং এটিকে গ্রাফ অনুসন্ধানের সমস্যা হিসাবে মডেলিং করেছি:
- আমরা
0
একটি বেসলাইন অবস্থান হিসাবে সন্নিবেশ করান (এটি প্রাথমিক অবস্থা হবে) - তারপরে, আমরা পজিশনগুলি কমপক্ষে থেকে বৃহত্তর পর্যন্ত সাজান
- তারপরে আমরা একটি বিএফএস / পিএফএস করি, যেখানে
state
রয়েছে- দুটি পূর্ণসংখ্যা
l
এবংr
এটি ইতিমধ্যে পরিদর্শন করা শর্তযুক্ত অবস্থানের অ্যারেতে একটি সামঞ্জস্যপূর্ণ পরিসীমা উপস্থাপন করে - একটি পূর্ণসংখ্যা
loc
যা আমাদের জানায় আমরা সীমার বাম বা ডান প্রান্তে রয়েছি কিনা - একটি পূর্ণসংখ্যা
time
যা আমাদের সময় কেটে যায় tells - একটি পূর্ণসংখ্যার 'ব্যয়' যা এখন পর্যন্ত আমাদের মোট ব্যয় বলে (আমরা যে নোডগুলি দেখেছি তার উপর ভিত্তি করে)
- দুটি পূর্ণসংখ্যা
- প্রতিটি রাজ্য থেকে আমরা [l - 1, r] এবং [l, r + 1] এ চলে যেতে পারি, ততক্ষণে অন্যান্য 3 টি পূর্ণসংখ্যার টুইট করে
- ফাইনাল স্টেটটি [0, N], উভয় শেষের অবস্থানটি পরীক্ষা করে।
যাইহোক, এটা মনে হচ্ছে যে [L, R, loc]
স্বতন্ত্র একটি রাষ্ট্র সংজ্ঞায়িত না, এবং আমরা দোকান আছে L, R, loc, and time
, যখন কমানোর cost
এই প্রতিটি করেন। এটি একটি ঘৃণ্য অ্যালগরিদম বাড়ে, যা এখনও কোনও ভাল জন্য খুব ধীর।
আমার ধারণা সম্পর্কে প্রসারিত করতে বা আমাকে সঠিক দিকে ঠেলে দিতে কেউ কি আমাকে সহায়তা করতে পারে?
সম্পাদনা: সম্ভবত এটি একটি গতিশীল প্রোগ্রামিং অপ্টিমাইজেশন সমস্যা হিসাবে মডেল করা যেতে পারে? এটি সম্পর্কে চিন্তাভাবনা করে, এটি গ্রাফ অনুসন্ধান সমাধানের মতো একই সমস্যাগুলি রয়েছে - কেবলমাত্র বর্তমানটি cost
কম হওয়ার অর্থ এই নয় যে এটি সেই সাব সমস্যাটির অনুকূল উত্তর, কারণ time
উত্তরটিও ব্যাপকভাবে প্রভাবিত করে।
লোভী কাজ করে না: আমার কাছে একটি লোভী নির্বাচন অ্যালগরিদম রয়েছে যা নির্দিষ্ট জায়গায় যাওয়ার ব্যয় নির্ধারণ করে (যেমন আমরা ডানদিকে চলে যাই, আমরা বাম ব্যারেল থেকে দূরত্বগুলি দ্বিগুণ করি)।
আপনি কি একটি অগ্রণীত-প্রথম অনুসন্ধান করতে পারেন, একটি হিউরিস্টিক দিয়ে? হিউরিস্টিক বর্তমান সময়ের ভ্রমণের ব্যয়কে ব্যয় করা সময়ের সাথে একত্র করতে পারে।