الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

لغز الروبوتات الثلاثة

رائج
بدأه kenham في 19 أبريل 2014 · 51 رد · 6,679 مشاهدة · في الرياضيات والخوارزميات
مشاركة: واتساب X فيسبوك تيليجرام
#26

zaraki_kenpache بانتظار تعليقك على حلي :p
بالمناسبة : حل الأخ keep forward صحيح تماماَ , لا أدري كيف وصل kenham إلى أنه خاطئ !

1
#27
اقتباس

 

لا أدري كيف وصل kenham إلى أنه خاطئ !

 

آسف جدا الحل صحيح تماما

 

آسف أخ  KeepForward

 

 

تهانينا لقد قمت بحل لغز من أصعب الألغاز بالعالم

 

شرف لى أن أتعرف إليك :)

تم تعديل هذه المشاركة بواسطة kenham في 4 يوليو 2014 في 21:46

#28
اقتباس

 

السؤال : هل  أنت متذبذب سيصدق ؟ وبفرض أنه قال لا ,

لو كان صادقاً بقوله :لا , فهو ليس متذبذباً سيصدق وهذا تناقض

لو كان كاذباً بقوله : لا , فهو متذبذب سيصدق وهذا أيضاً تناقض

لذلك : إن كان نص السؤال صحيحاً فهو سيقول نعم في الحالتين

 

أتفق معك في هذا أخ مصطفى

 

لكن لماذا لم تواصل لإيجاد الحل؟؟؟

#29

هذا هو الحل ! شرحته سابقاً !

الوحيد الذي يجيب عن السؤال بــلا هو الصادق , وقد شرحت آلية الاختبار سابقاً

#30
اقتباس

 

والآن بعد الإطالة :

الحل :

قمت بتصوير الورقة التي فكرت عليها , وحفظت الصورة بصيغة png , ثم شفرتها بطريقة xor بمفتاح بطول 1 بايت فقط , وهناك 256 احتمالاً لفك التشفير , واحد منهم فقط سيكون صورة png صالحة للقراءة .(الصورة بداخل ملف rar مضغوط عادي)

 

صورة غير سليمة

 

أرجو من الأخ مصطفى إعادة رفعها

#31

الصورة مشفرة بمفتاح من بايت واحد بطريقة xor , يمكنك كتابة برنامج بسيط لفك تشفيرها :P

تم تعديل هذه المشاركة بواسطة مصطفى 36a2 في 29 يوليو 2014 في 13:37

1
#32

الغرور عندك شغال على الدوام

 

يا عم قلت لك الصورة معطوبة،أعرف أنها مشفرة

 

لكنها معطوبة

 

قبل أن أفك التشفير علي أن أفتحها لكن صورتك لم تفتح معي

 

يوجد خطب ما بالصورة

تم تعديل هذه المشاركة بواسطة kenham في 29 يوليو 2014 في 12:44

−2
#33

لماذا تشتمني لمجرد أنك لم تعرف فك تشفير الملف ! سامحك الله

الحل موجود في هذه المشاركة /index.php/topic/288913-%D9%84%D8%BA%D8%B2-%D8%A7%D9%84%D8%B1%D9%88%D8%A8%D9%88%D8%AA%D8%A7%D8%AA-%D8%A7%D9%84%D8%AB%D9%84%D8%A7%D8%AB%D8%A9/#entry1391819

الصورة فقط لطريقة التفكير التي اتبعتها , او المحاولات الخاطئة التي جربتها (وهذه عادة لا تنشر لأن لا أحد يستفيد منها )

على كل حال , الملف (طبعاً) غير صالح للاستخدام لأنه مشفّر , لا أدري ماذا تعني كلمة مشفر , الملفات المشفرة لا تعمل حتى يتم فك تشفيرها ..

#34
اقتباس

 

لماذا تشتمني لمجرد أنك لم تعرف فك تشفير الملف ! سامحك الله

 

أنا لم أشتمك يا أخ مصطفى و مع ذلك أنا آسف فلم أقصد ذلك أبدا

 

أنا أقول أن الملف ليم بفتح معي بالمترجم،أعرف أنه مشفر

 

كنت سأفتحه و أحولة للبينارى ثم أفك تشفيره

 

لكنه للأسف لم يفتح معي سواءا بالبايثون أو الماتلاب

 

هناك خلل بالصورة و أرجو أن تتأكد منه

 

 

أكرر إعتذارى

#35

لا مشكلة أهلاً بك :)

انظر هذا كود سي++ يفتح الملف ويقرأه , ثم يكتب في ملف آخر نفس الملف , ويمكنك تعديله لينتج ملف مفكوك التشفير بتعديل 4 أـحرف(لو كنت تعرف المفتاح ) وبتعديل أطول في حال تريد اكتشاف المفتاج بنفسك ..

#include <iostream>
#include <fstream>
using namespace std;

int main()
{
    ifstream fin("c:\\arabteam2000.png",ios::binary);
    ofstream fout("c:\\arabteam2000_out.png",ios::binary);
    while(!fin.eof()){
        fout<<char(  fin.get()   );
    }
    return 0;
}

((جربت الكود للتو على الصورة وتم فك التشفير بإضافة 4حروف))

وفقك الله , ولا مشكلة بيننا فنحن اخوة في المنتدى :)

تم تعديل هذه المشاركة بواسطة مصطفى 36a2 في 30 يوليو 2014 في 21:31

#36

لم اقرا الاجابات واول مرة اسمع اللغز. فقط قرات السؤال وهذا هو جوابي:

 

 

السؤال الاول: هل X صحيح؟

السؤال الثاني: هل X صحيح؟

السؤال الثالث: هل قلت سابقا ان X صحيح؟

 

اجابات الروبوتات:

الاول: نعم، نعم، لا

الثاني: لا، لا، لا

الثالث: نعم، لا، نعم

 

الخلاصة:

واضح ان الاول ليس مذبذب لانه اجاب "نعم" مرتين. الا انه كذاب لانه انكر انه قال "نعم" سابقا.

واضح ان الثاني ليس مذبذب لانه اجاب "نعم" مرتين. وكذلك هو صادق لانه نفى صدقا انه قال "نعم" سابقا.

واضح ان الثالث اهبل  :D  لذا فهو مذبذب 

 

الان انا ذاهب اقرأ الاجابات (فنقرز كرسد B))

حان الموعد حان موعدنـا :ph34r:  جاء البطل يفرح شاشتنا
اهجم اهجم، لا تلــــــــي :ph34r:  نحن معك أجمعيـــــــــن

#37

مررت على الاجابات بسرعة واكتشفت انه لا يجوز سؤال جميع الروبوتات مرة واحدة باستخدام المايكروفون والصراخ عاليا. يعني يجب ان اسال كل روبوت على حدة. وبالتالي اسئلتي ليست 3 صراخ مرتفع بل 6 همس في اذن الروبوت (لانني يجب ان اسال كل روبوت على حده).

 

لكن لم اجد جواب مقنع ولم اركز في لاجابات الاخرى واكتفيت فقط انني اكتشفت انه لا يجوز الصراخ عاليا. لذا هذه هي اجابتي الجديدة بناء على 3 اسئلة اجمالا بدون الصراخ عاليا.

 

######الحل#######

اولا: نعرف ان هناك 3 روبوتات، ونعرف ان اصنافهم هي: صادق، كاذب و اهبل.

وكل علينا هو اكتشاف هوية روبوتين اثنين فقط، والثالث هو مادونهم. يعني لو اكتشفنا الاهبل والصادق فاكيد الاخر هو الكاذب.

 

 

ثانيا نمسك اول روبوت ونسأله "هل الروبوت الثاني كاذب؟" ونضع اجابته في متغير X

نمسك اول روبوت ونسأله مرة أخرى "هل الروبوت الثاني كاذب؟" ونضع اجابته في متغير Y

 

في حال كان X = Y = نعم، حينها الاحتمالات --- الحالة الاولى:

(1) الاول صادق، الثاني كاذب، الثالث اهبل بالضرورة باستخدام أولا.

(2) الاول كاذب، الثاني صادق، الثالث اهبل بالضرورة باستخدام أولا.

(3) الاول كاذب، الثاني اهبل، الثالث صادق بالضرورة باستخدام أولا.

 

في حال كان X = Y = لا، حينها الاحتمالات --- الحالة الثانية:

(4) الاول صادق، الثاني اهبل، الثالث كاذب بالضرورة باستخدام أولا.

لاحظ ان المشكلة محلولة مع هذه الحالة اذ لا يوجد اي احتمال متضارب.

ايضا لاحظ ان الروبوت الكاذب لا يستطيع ان يقول "لا" مرتين لهذا السؤال (والا حيكون صادق).

وكذلك الروبوت الاهبل لا يستطيع ان يقول "لا" مرتين والا مش حيكون مذبذب.

 

في حال كان X != Y حينها الروبوت الاول اهبل --- الحالة الثالثة.

 

 

ثالثا: بقي لدينا سؤال واحد فقط.

 

في الحالة الثالثة وهي حالة سهلة، نسأل الروبوت الثاني "هل زميلك الاول اهبل؟" ونضع اجابته في متغير Z

اذا كان Z = نعم، حينها الجواب هو: الاول اهبل، الثاني صادق، والثالث كاذب بالضرورة باستخدام اولا.

اذا كان Z = لا، حينها الجواب هو: الاول اهبل، الثاني كاذب، والثالث صادق بالضرورة باستخدام اولا.

 

في الحالة الاولى نسأل الروبوت الأول "هل زميلك الثاني صادق؟" ونضع اجابته في متغير Z

اذا كان Z = نعم، حينها الروبوت الاول هو قطعا صادق والجواب هو (1) باستخدام ثانيا.

اذا كان Z = لا، حينها الروبوت الاول هو قطعا كاذب والجواب هو (2) باستخدام ثانيا.

 

اما الحالة الثانية فلا تحتاج الى حل هنا لانها محلولة بالاساس في ثانيا. بعبارة أخرى، تم حلها بواسطة سؤالين فقط.

لكن اذا كان من الالزام حله بثلاثة أسئلة، حينها ممكن نمسك اي روبوت ونسأله "هل تحبني؟" وهكذا بلغنا النصاب الشرعي لعدد الأسئلة :ph34r:

تم تعديل هذه المشاركة بواسطة جونكر في 31 أغسطس 2014 في 07:29

حان الموعد حان موعدنـا :ph34r:  جاء البطل يفرح شاشتنا
اهجم اهجم، لا تلــــــــي :ph34r:  نحن معك أجمعيـــــــــن

#38
kenham كتب:

الغرور عندك شغال على الدوام

 

يا عم قلت لك الصورة معطوبة،أعرف أنها مشفرة

 

لكنها معطوبة

 

قبل أن أفك التشفير علي أن أفتحها لكن صورتك لم تفتح معي

 

يوجد خطب ما بالصورة

حالتك صعبة :ph34r:

 

عندما يكون اي ملف مشفر جميع البيانات تكون مشفرة ومن بينها بيانات الformatting مثلا لو قرأت الملف ومسكته تنظر الى الmagic code ستجده حاجه شبه عشوائية لانها مشفرة.

 

بعض البرامج التي يستخدمها اشخاص ظريفين وكيوت :wub: تقوم بوضع فورمات جديد اسمه "انا فورمات التشفير" وده ينفتح في برنامج كيوت وظريف زيهم ويسالهم عن الباسوورد زي الwinrar والحجات الظريفة الاخرى للناس الحلوين زيك :blush: وربما لهذا السبب انت تظن ان الملف المشفر يجب ان يكون لديه فورمات صورة؟ مش عارف انت منين جتك الفكرة دي لكن اقول ربما..

 

لكن اذا مسكت برنامج ناس بتوع مبرمجين وناس فاهمة B)  زي openssl.. واخد بال حضرتك B)  حينها هه احلم ياعم. وسيظهر شكل الملف انه ملف يحتوي على random bits وطبعا سيظهر معطوب بالنسبة لك.

حان الموعد حان موعدنـا :ph34r:  جاء البطل يفرح شاشتنا
اهجم اهجم، لا تلــــــــي :ph34r:  نحن معك أجمعيـــــــــن

#39
اقتباس

 

حالتك صعبة :ph34r:

 

عندما يكون اي ملف مشفر جميع البيانات تكون مشفرة ومن بينها بيانات الformatting مثلا لو قرأت الملف ومسكته تنظر الى الmagic code ستجده حاجه شبه عشوائية لانها مشفرة.

 

بعض البرامج التي يستخدمها اشخاص ظريفين وكيوت :wub: تقوم بوضع فورمات جديد اسمه "انا فورمات التشفير" وده ينفتح في برنامج كيوت وظريف زيهم ويسالهم عن الباسوورد زي الwinrar والحجات الظريفة الاخرى للناس الحلوين زيك :blush: وربما لهذا السبب انت تظن ان الملف المشفر يجب ان يكون لديه فورمات صورة؟ مش عارف انت منين جتك الفكرة دي لكن اقول ربما..

 

لكن اذا مسكت برنامج ناس بتوع مبرمجين وناس فاهمة B)  زي openssl.. واخد بال حضرتك B)  حينها هه احلم ياعم. وسيظهر شكل الملف انه ملف يحتوي على random bits وطبعا سيظهر معطوب بالنسبة لك.

 

شكرا على على المرور

#40

هل حلي صحيح؟

حان الموعد حان موعدنـا :ph34r:  جاء البطل يفرح شاشتنا
اهجم اهجم، لا تلــــــــي :ph34r:  نحن معك أجمعيـــــــــن

#41

جونكر : المتذبذب لا يكذب ثم يصدق بتسلسل معين , بل وفق عملية عشوائية غير مستقرة , اللغز الأصلي (للأسف نص اللغز في هذه المشاركة ill defined ) يوضّح أن المتذبذب يصدق أو يكذب حسب سقوط عملة معدنية في رأسه - نقش أو كتابة -

وعلى ذلك فعند الحصول على إجابتين نعم أو إجابتين لا , فهناك احتمال أن يكون الأول هو المتذبذب .

وشكراً لك لأنك بينت موضوع التشفير

1
#42
مصطفى 36a2 كتب:

جونكر : المتذبذب لا يكذب ثم يصدق بتسلسل معين , بل وفق عملية عشوائية غير مستقرة , اللغز الأصلي (للأسف نص اللغز في هذه المشاركة ill defined ) يوضّح أن المتذبذب يصدق أو يكذب حسب سقوط عملة معدنية في رأسه - نقش أو كتابة -

وعلى ذلك فعند الحصول على إجابتين نعم أو إجابتين لا , فهناك احتمال أن يكون الأول هو المتذبذب .

وشكراً لك لأنك بينت موضوع التشفير

مش ده الي انا قلته في الاحتمالات ايضا؟ انه اذا X !=Y حينها هو حتما متذبذب (او اهبل حسب تسميتي).

 

هل لازلت ترى ان هناك خطأ في حلي؟ اذا كان الجواب نعم فماهو؟

حان الموعد حان موعدنـا :ph34r:  جاء البطل يفرح شاشتنا
اهجم اهجم، لا تلــــــــي :ph34r:  نحن معك أجمعيـــــــــن

#43

الخطأ هنا :
 

اقتباس

في حال كان X = Y = نعم، حينها الاحتمالات --- الحالة الاولى:

(1) الاول صادق، الثاني كاذب، الثالث اهبل بالضرورة باستخدام أولا.

(2) الاول كاذب، الثاني صادق، الثالث اهبل بالضرورة باستخدام أولا.

(3) الاول كاذب، الثاني اهبل، الثالث صادق بالضرورة باستخدام أولا.

 

هناك احتمالان جديدان يتضمنان :

==الأول أهبل ==

فالمتذبذب يمكن له أن يصدق كما لو كان صادقاً أو يكذب كما لو كان كاذباً عدداً غير محدد من المرات وبدون قانون يحدد له ذلك

تم تعديل هذه المشاركة بواسطة مصطفى 36a2 في 1 سبتمبر 2014 في 11:44

1
#44

ههههههه شكلك لم تقرأ كلامي بالكامل....

 

اولا لاحظ انني كتبت فوق "في حال كان Y = X = نعم" و في هذا الاحتمال استحالة يكون مذبذب الروبوت. لانه اذا كان الروبوت مذبذب حينها X != Y لان احدهم سيكون شيء (مثلا نعم) والآخر شيء مخالف (مثلا لا).

 

ثانيا لو تكمل قراءة ردي سجدني اتحدث عن الحالات الاخرى ومنها عندما يكون X != Y وهذه هي الحالة عندما يكون اول روبوت متذبذب، وطبعا هذه ايضا حللتها في ردي.

 

هل قرأت ردي بالكامل؟

حان الموعد حان موعدنـا :ph34r:  جاء البطل يفرح شاشتنا
اهجم اهجم، لا تلــــــــي :ph34r:  نحن معك أجمعيـــــــــن

#45

هذا هو ردي لكن مع الالوان لتسهيل القراءة. الحالات باللون الازرق

جونكر كتب:

مررت على الاجابات بسرعة واكتشفت انه لا يجوز سؤال جميع الروبوتات مرة واحدة باستخدام المايكروفون والصراخ عاليا. يعني يجب ان اسال كل روبوت على حدة. وبالتالي اسئلتي ليست 3 صراخ مرتفع بل 6 همس في اذن الروبوت (لانني يجب ان اسال كل روبوت على حده).

 

لكن لم اجد جواب مقنع ولم اركز في لاجابات الاخرى واكتفيت فقط انني اكتشفت انه لا يجوز الصراخ عاليا. لذا هذه هي اجابتي الجديدة بناء على 3 اسئلة اجمالا بدون الصراخ عاليا.

 

######الحل#######

اولا: نعرف ان هناك 3 روبوتات، ونعرف ان اصنافهم هي: صادق، كاذب و اهبل.

وكل علينا هو اكتشاف هوية روبوتين اثنين فقط، والثالث هو مادونهم. يعني لو اكتشفنا الاهبل والصادق فاكيد الاخر هو الكاذب.

 

 

ثانيا نمسك اول روبوت ونسأله "هل الروبوت الثاني كاذب؟" ونضع اجابته في متغير X

نمسك اول روبوت ونسأله مرة أخرى "هل الروبوت الثاني كاذب؟" ونضع اجابته في متغير Y

 

في حال كان X = Y = نعم، حينها الاحتمالات --- الحالة الاولى:

(1) الاول صادق، الثاني كاذب، الثالث اهبل بالضرورة باستخدام أولا.

(2) الاول كاذب، الثاني صادق، الثالث اهبل بالضرورة باستخدام أولا.

(3) الاول كاذب، الثاني اهبل، الثالث صادق بالضرورة باستخدام أولا.

 

في حال كان X = Y = لا، حينها الاحتمالات --- الحالة الثانية:

(4) الاول صادق، الثاني اهبل، الثالث كاذب بالضرورة باستخدام أولا.

لاحظ ان المشكلة محلولة مع هذه الحالة اذ لا يوجد اي احتمال متضارب.

ايضا لاحظ ان الروبوت الكاذب لا يستطيع ان يقول "لا" مرتين لهذا السؤال (والا حيكون صادق).

وكذلك الروبوت الاهبل لا يستطيع ان يقول "لا" مرتين والا مش حيكون مذبذب.

 

في حال كان X != Y حينها الروبوت الاول اهبل --- الحالة الثالثة.

 

 

ثالثا: بقي لدينا سؤال واحد فقط.

 

في الحالة الثالثة وهي حالة سهلة، نسأل الروبوت الثاني "هل زميلك الاول اهبل؟" ونضع اجابته في متغير Z

اذا كان Z = نعم، حينها الجواب هو: الاول اهبل، الثاني صادق، والثالث كاذب بالضرورة باستخدام اولا.

اذا كان Z = لا، حينها الجواب هو: الاول اهبل، الثاني كاذب، والثالث صادق بالضرورة باستخدام اولا.

 

في الحالة الاولى نسأل الروبوت الأول "هل زميلك الثاني صادق؟" ونضع اجابته في متغير Z

اذا كان Z = نعم، حينها الروبوت الاول هو قطعا صادق والجواب هو (1) باستخدام ثانيا.

اذا كان Z = لا، حينها الروبوت الاول هو قطعا كاذب والجواب هو (2) باستخدام ثانيا.

 

اما الحالة الثانية فلا تحتاج الى حل هنا لانها محلولة بالاساس في ثانيا. بعبارة أخرى، تم حلها بواسطة سؤالين فقط.

لكن اذا كان من الالزام حله بثلاثة أسئلة، حينها ممكن نمسك اي روبوت ونسأله "هل تحبني؟" وهكذا بلغنا النصاب الشرعي لعدد الأسئلة :ph34r:

تم تعديل هذه المشاركة بواسطة جونكر في 1 سبتمبر 2014 في 14:36

حان الموعد حان موعدنـا :ph34r:  جاء البطل يفرح شاشتنا
اهجم اهجم، لا تلــــــــي :ph34r:  نحن معك أجمعيـــــــــن

#46
اقتباس

اولا لاحظ انني كتبت فوق "في حال كان Y = X = نعم" و في هذا الاحتمال استحالة يكون مذبذب الروبوت. لانه اذا كان الروبوت مذبذب حينها X != Y لان احدهم سيكون شيء (مثلا نعم) والآخر شيء مخالف (مثلا لا).

لا يا أخي , ليس بالضرورة أن يقول شيء مختلف , يمكن له أن يكذب عشر مرات متتالية مثلاً أو يصدق ألف مرة متتالية

المتذبذب لا يحكمه قانون , هذا الكلام موجود في التعليقات الأولى في هذا الموضوع

 

أكرر المتذبذب ليس مضطراً لأن يكذب أو يصدق في حالات معينة , وفي حالتك قررت أن المتذبذب إن صدق مرة فيجب أن يكذب في التالية وإن كذب في الأولى فيجب أن يصدق في الثانية ...... وهذا غير صحيح

1
#47

مستحيل تحل اللغز ب3 اسئلة اذا كان تعريف المذبذب كما قلت

 

تعريف المذبذب الوحيد الذي يسمح لحل اللغز ب3 ا سئلة هو انه عشوائيا يجيب على اول سؤال، وبقية الاسئلة يجيب عكس الاجابة السابقة.

 

هل لديك حل ب3 اسئلة لهذا اللغز مع تعريف

حان الموعد حان موعدنـا :ph34r:  جاء البطل يفرح شاشتنا
اهجم اهجم، لا تلــــــــي :ph34r:  نحن معك أجمعيـــــــــن

#48

حسن يبدو ان هناك حل مع المذبذب العشوائي تماما... لا تجب على سؤالي دعني افكر قليلا.. يبدو انني وجدت الحل

حان الموعد حان موعدنـا :ph34r:  جاء البطل يفرح شاشتنا
اهجم اهجم، لا تلــــــــي :ph34r:  نحن معك أجمعيـــــــــن

#49

يمكنك أن تسأل سؤالاً يتضمن and أو or أو xor لعدة أمور في سؤال واحد , مثلاً : هل أنت روبوت و صادق ومن على يمينك كاذب ؟ (في سؤال واحد )

سأتركك تفكرّ :)

#50

حسن فقد الامل وغششت بواسطة النظر الى الصورة التي ارفقتها احد الاعضاء في الصفحة السابقة

 

 

Ask R1: does R2 lie more than R3?
    YES:
        R1:honest,  R2:liar,    R3:random
        R1:liar,    R2:honest,  R3:random
        R1:random,  R2:honest,  R2:liar
        R1:random,  R2:liar,    R2:honest

        Ask R2: are you random?
            YES:
                R1:honest,  R2:liar,    R3:random
                R1:random,  R2:liar,    R2:honest

                Ask R2: is R1 honest?
                    YES:
                        R1:random,  R2:liar,    R2:honest
                    NO:
                        R1:honest,  R2:liar,    R3:random

            NO:
                R1:liar,    R2:honest,  R3:random
                R1:random,  R2:honest,  R2:liar

                Ask R2: is R1 liar?
                    YES:
                        R1:liar,    R2:honest,  R3:random
                    NO:
                        R1:random,  R2:honest,  R2:liar

    NO:
        Same logic to above. Should work..

حان الموعد حان موعدنـا :ph34r:  جاء البطل يفرح شاشتنا
اهجم اهجم، لا تلــــــــي :ph34r:  نحن معك أجمعيـــــــــن

مواضيع مشابهة