ওভারফ্লো নিরাপদ সমষ্টি


13

আমি অনুমান করছি দিয়েছে পূর্ণসংখ্যার প্রস্থ নির্ধারণ (অর্থাত তারা প্রস্থ এর রেজিস্টার মাপসই W ,) একটি 1 , একটি 2 , ... একটি এন যেমন যে তাদের যোগফল একটি 1 + + একটি 2 + + + + একটি এন = S একটি রেজিস্টার মধ্যে ফিট করে প্রস্থের ডাব্লুnwa1,a2,ana1+a2++an=Sw

আমার কাছে মনে হয় যে আমরা সর্বদা সংখ্যাগুলিকে নির্ধারিত করতে পারি যে প্রতিটি উপসর্গের যোগফল এস i = বি 1 + বি 2 + + বি আমি প্রস্থ ডাব্লুয়ের একটি নিবন্ধেও ফিট করে ।b1,b2,bnSi=b1+b2++biw

মূলত, অনুপ্রেরণা হল কোনও মধ্যবর্তী পর্যায়ে পূর্ণসংখ্যার ওভারফ্লো সম্পর্কে চিন্তা না করে স্থির প্রস্থের রেজিস্ট্রার মেশিনগুলিতে এর যোগফল গণনা করা ।S=Sn

সেখানে ফাস্ট (বিশেষ রৈখিক সময়) অ্যালগরিদম যেমন একটি বিন্যাস (অভিমানী খুঁজে পেতে একটি ইনপুট অ্যারের হিসাবে দেওয়া হয়)? (বা বলুন যে যদি এইরকম অনুক্রমের অস্তিত্ব না থাকে)।ai


3
ফলোআপ: সংক্ষেপে ওভারফ্লো সনাক্তকরণ - এমন কোনও দ্রুত পদ্ধতি আছে যা সাধারণ প্রসেসরের বৈশিষ্ট্যগুলিকে বিবেচনা করে?
গিলস 'অশুভ হওয়া বন্ধ করুন'

1
কেবলমাত্র দু'জনের পরিপূরক নিবন্ধগুলি ব্যবহার করুন এবং তাদের যোগফল দিন। এমনকি এটি মাঝখানে প্রবাহিত হলেও, আপনার পূর্ব শর্তটি গ্যারান্টি দেয় যে উপচে পড়াগুলি বাতিল হয়ে যাবে, এবং ফলাফলটি সঠিক হবে। : পি
কোডসইনচাউস

@ কোডইন চাওস: এটি কি সত্য?
আর্যভাটা

1
আমি তাই মনে করি. আপনি মূলত একদল মডিউল 2 ^ n হল, তুমি কোথা থেকে ক্যানোনিকাল উপস্থাপনা পছন্দ করে এ কাজ করছেন -2^(n-1)করার 2^(n-1)-1। অবশ্যই এটির জন্য দুটি এর পরিপূরক এবং ভাল সংজ্ঞায়িত ওভারফ্লো আচরণ প্রয়োজন, তবে সি # এর মতো ভাষায় এটি কাজ করা উচিত।
কোডসইনচাউস

@ কোডইনচাওস: দুটি সম্ভাবনা নেই যা একই বাকী মডুলো ? আপনি মূলত বলছেন, আদেশ নির্বিশেষে, সেগুলির মধ্যে কখনই ঘটতে পারে না। নাকি আমি কিছু মিস করছি? 2n
আর্যভাটা

উত্তর:


10

কৌশল
নিম্নলিখিত লিনিয়ার-টাইম অ্যালগরিদম আংশিক যোগফলের চিহ্নের উপর ভিত্তি করে ধনাত্মক বা নেতিবাচক সংখ্যা নির্বাচন করে আশেপাশে ঘোরাফেরা করার কৌশল গ্রহণ করে । এটি সংখ্যার তালিকার প্রিপ্রোসেসেসেস; এটি সংযোজন সম্পাদন করার সময় অন- ফ্লাইতে ইনপুটটির অনুক্রমের গণনা করে ।0

অ্যালগরিদম

  1. পার্টিশন দুই তালিকার মধ্যে ইতিবাচক উপাদানের পি ও নেতিবাচক উপাদান এম । জিরোস ফিল্টার আউট করা যেতে পারে।a1,,anPM
  2. যাক Sum=0
  3. উভয় তালিকাই খালি নয় non
  4.       Sum>0Sum:=Sum+head(M)M:=tail(M)
  5.       Sum:=Sum+head(P)P:=tail(P)
  6. S

শুদ্ধি
শুদ্ধি সংখ্যার তালিকা দৈর্ঘ্যের উপর একটি সহজবোধ্য প্রস্তাবনামূলক যুক্তি ব্যবহার স্থাপন করা যেতে পারে।

a1,,an

SumSum=0Sum>0SumSumSum0SumSum

এখন, প্রথম ফলাফল প্রয়োগ করা যেতে পারে, এবং একসাথে এগুলি প্রমাণ করতে যথেষ্ট হয় যে যোগফল কখনই সীমার বাইরে যায় না।


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