היי
במבחן הצלחתי לחשוב על פתרון לשאלה האחרונה, והייתי סקרן לדעת עם ישנם פתרונות טובים יותר.
הפתרון שלי מבוסס על הנוסחא:
min(a,b)|a-b|-a-b)/2
כאשר:
a|x|=X*signX
(ה a בהתחלה זה רק כדי שהסדר של האותיות יהיה תקין).
שאלתי מאוחר יותר את אחד החברים שלי איך הוא היה פותר,
והוא הציע להשתמש באיזשהי פקודה עלומת שם (שרק הוא הכיר) שמדלגת מעל שורת הקוד שאחריה עם תנאי כלשהו מתקיים… הפתרון הזה לא נראה לי קביל אבל היה רעיון אחר –
כאשר מבצעים:
cmp ax,bx
נדלק איזשהו flag אם ax>bx. נניח שהפכנו את ה flag למספר. אז:
min(a,b)=flag*bx+(1-flag)*ax
זה הפתרון הכי קצר שמצאתי עד עכשיו.
רעיונות?
-אמרי
הערה: אל תשלחו דואל לכתובת שנתתי, זאת כתובת ל junkmail.