לכתוב קוד שבהנתן קלט אין סופי של מספרים להוציא בכל רגע שרוצים ממוצא של N האיברים האחרונים
תשובות
הוסף תשובה
|
לצפיה בתשובות
אפריל 2018
ניתן לממש ע"י מערך מעגלי (ציקלי) באורך N, כאשר שומרים על מצביע הרץ על האינדקס של המערך. שומרים בנוסף משתנה counter המונה מספר האיברים שנקלטו, ומשתנה sum של סכום N האיברים האחרונים.
הפונקציה תקבל משתנים וכאשר יתקבלו למעלה מ-N תמחק מהמערך את האיבר המיותר ותחסיר אותו מהסכום. בהינתן השאילתה תבצע חישוב sum/N.
תהליך ארוך שיכול להגיע אף ל-9 חודשים המורכב מראיון אישי, ראיון מקצועי, מבחן פיל"ת וסיווג בטחוני.
שאלות מתוך הראיון
תפקיד: מתכנן מכני של מערכות זיווד לרכיבים אלקטרוניים. נשאלו שאלות בסיסיות במכניקת מוצקים, דינמיקה ושרטוט. היה דרוש לפתור בעית שקיעה של קורות באמצעות סופרפוזיציה וכן לשרטט איזומטריה בהנתן זוג מבטים
אתה מגיע לקבלה, עונה על שאלונים אישיים,
מחכה בלובי ומקבלים אותך 2 אנשי מחלקה אליה אתה מועמד.
זה יהיה שילוב של מנהל צוות ומהנדס או מנהל צוות ומנהל מחלקה.
כשמזמנים אתכם לראיון, תנסו לשאול על איזו שפה מפתחים,
מה התפקיד (REAL TIME , אלגוריתמים) כי על פי זה אתם מתכוננים.
שאלות מתוך הראיון
נתון לך מספר.
כיצד תוכל לדעת האם הוא בחזקה של 2
בזמן הקצר ביותר ?
תשובות
הוסף תשובה
|
לצפיה בתשובות
פברואר 2017
תמיד כשיש לכם פיתרון שהוא גם מסורבל, הקרוי גם הפיתרון הנאיבי, ישר להגיד.
הפיתרון הנאיב הוא כך: יש לכם מס' שיהיה בפרמטר int value.
בפונקציה עצמה עושים לולאת FOR ובודקים אם 2 בחזקת i שווה ל-value.
ברגע שעברנו את value, אנו יודעים שהמספר value אינו בחזקה של 2.
עכשיו מה שקורה, זה שחישוב חזקה זה זמן יקר. נכון על מס' כמו 8, 16, 20,
לבצע את הפונקציה הזו, זה לא מעמסה גדולה על המעבד.
אך מה קורה כשיש מס' ענקי ? משהו כמו מיליון בחזקת מיליארד ועליו לבצע חזקה של 2 ?
אז זהו...שאלות של REALTIME אוהבים להתעסק בביטים.
למה ? כי המחשב מתרגם בסוף הכל לביטים וזה הצורה הכי נוחה.
יש לנו פה יתרון משמעותי להשתמש בביטים, כי כל מספר בינארי הוא שילוב
של מספרים בחזקת 2.
אם תשחקו עם מספרים, תגלו שמס' בחזקה של 2 יש בו ביט אחד דולק.
לכן עושים לולאה שבכל איטרציה, עושים SHIFT RIGHT ועושים פעולת AND עם 1,
וככה סופרים את מס' ה-1ים.
ברגע שמס' ה-1ים הוא 2 ומעלה, הרי שהמספר אינו בחזקת 2.
מרץ 2017
להכין מערך שבו התאים עם אינדקס בחזקת 2 מקבלים ערך 1 השאר 0 - נקרא גם פתרון בעזרת LOT
ספטמבר 2017
נראה לי שהכוונה הייתה לעובדה כי רק מספר שונה מאפס שהוא חזקה שלמה של 2 אם נקח אותו ונעשה פעולת AND עם אותו המספר פחות אחת נקבל 0. טריק ביטים ידוע
מפתחת ומייצרת אמצעי לחימה מהמתקדמים ביותר עבור צה”ל ומערכת הביטחון, תוך ביסוס חוסנה הכלכלי ע”י פעילות בשוק הבינלאומי. החברה מציעה היום ללקוחותיה מגוון רחב ביותר של פתרונות חדשניים בחזית הטכנולוגיה העולמית, החל ממערכות תת-מימיות, עבור דרך אמצעים ומערכות ימיות, יבשתיות ואוויריות וגמור במערכות בחלל.