- 0
سجل دخول لمتابعه هذا
متابعين
0

لغز العدد الضائع!
بواسطة
Khaled Alshaya,
-
يستعرض القسم حالياً 0 members
لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .
بواسطة
Khaled Alshaya,
لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .
تم النشر منذ (معدل)
السلام عليكم و رحمة الله و بركاته....
تصور أن لدينا متتابعة على الشكل التالي:
n, n+1, n+2, ..., n+i
و قام أحد الأشخاص بنزع عدد من تلك المتتابعة, ثم قام ببعثرة الأرقام فأصبح ترتيبها عشوائياً عند إدخالها لبرنامجك. هل تستطيع معرفة العدد الذي تم نزعه من المتتابعة المدخلة للبرنامج؟
ملاحظات لتسهيل كتابة الخوارزمية:
أولاً, افترض أن الأعداد المدخلة لا تقل عن عددين. فليس هناك داع للتحقق من وجود عددين فأكثر.
ثانياً, افترض أن أطراف المتتابعة لم يتم المساس بها, بالتالي فإن العنصرين n و n+i دائماً حاضران ضمن مدخلات الخوارزمية.
ثالثاً, و هذه الملاحظة تتبع من الملاحظة الثانية, أن العدد الضائع أو لنقل العدد الذي تم نزعه هو عدد من منتصف المتتابعة. بالتالي لو سميناه n+k فإن k لابد أن تحقق الشرط التالي:
0 < k < i
رابعاً, ليس مطلوباً منك التحقق من كون المدخل لبرنامج صحيح أم لا, و افترض أنك تحصل دائماً على مدخلات صالحة للخوارزمية بقصد تبسط كتابة البرنامج لا أكثر. و هذا يعني أن الأعداد المدخلة عبارة عن أعداد موجبة دائماً.
ما يلي عبارة عن أمثلة على مدخلات البرنامج و مخرجاته(العدد الضائع)...
ما هي أفضل خوارزمية تستطيع الوصول إليها لحل هذا السؤال؟ بمجرد كتابتك للبرنامج ضعه في الموضوع, و بعد أن نصل إلى عدد جيد من الإجابات سنقوم بمناقشتها و طرح أفضل خوارزمية لحل السؤال.
تحياتي :)
تم تعديل بواسطه Khaled.Alshayaشارك هذا الرد
رابط المشاركة
شارك الرد من خلال المواقع ادناه