جارٍ التحميل…
جارٍ التحميل…
تفهم المتطلبات السابقة وتتبع قائمة المنجز خطوة خطوة.
تخيل خمس مهام، وبعضها لا يبدأ حتى تنتهي مهام قبله. سنختار مهمة جاهزة، نكملها، ثم نراجع من أصبح جاهزًا بعدها. كل مهمة تضيف حرفًا إلى الكلمة.
| الكلمة في الملف | معناها هنا |
|---|---|
| id | رقم يميز المهمة. |
| letter | الحرف الذي تضيفه المهمة عند إكمالها. |
| requires | أرقام المهام التي يجب إكمالها قبل هذه المهمة. |
| none | لا يوجد متطلب سابق، فيمكن البدء بهذه المهمة. |
| completed | مجموعة أرقام المهام التي أكملناها. |
| ready | المهام التي لم ننفذها، وقد اكتملت جميع متطلباتها. |
| output | الحروف التي جمعناها حتى الآن. |
أصغر رقم في الجدول ليس بالضرورة جاهزًا. نحدد الجاهز أولًا، ثم نقارن أرقامه. ولا نكرر مهمة أكملناها.
بيانات محلية كاملة وقاعدة معالجة محددة؛ يمكنك الحل يدويًا أو ببرنامج صغير على جهازك.
LOCAL TASK TABLE:
id | letter | requires
1 | A | 4
2 | B | none
3 | E | 1,5
4 | R | 2
5 | V | 4
ALGORITHM:
completed = empty set; output = empty string
Repeat until all 5 tasks complete:
ready = unfinished tasks whose required IDs are ALL in completed
if ready is empty: report a dependency cycle and stop
choose ready task with SMALLEST NUMERIC id
append its letter; add its id to completed
RULE: a task runs exactly once; recompute ready after each completion.
TARGET: output.هذه أول مرة تتعلم فيها الفكرة؟ افتح الشرح وامشِ معنا من أول سطر إلى الإجابة. سنشرح معنى الكلمات وسبب كل خطوة. بعدها جرّب كتابة الناتج بنفسك.
الشرح يتضمن الإجابة النهائية. قراءته جزء من التعلم، ولا تكمل التحدي تلقائيًا.
اختر من المهام الجاهزة فقط، والأصغر رقمًا عند تعددها. أضف حرف المهمة وأعد فحص الجاهزية بعد كل اختيار.
المحاولات غير محدودة ولا تخصم نقاطًا. تُفحص الإجابات على السيرفر، ويُحفظ تقدم التدريب في متصفحك.
الدليل داخل كل تحدٍ يكفي لحله. هذه مراجع إضافية عند رغبتك في فهم المواصفات والأدوات بعمق أكبر.