ניסיון, פרוייקטים, שפות תכנות.
שאלה של אלגוריתם בפייתון למציאת מספר המפתחים הגבוה ביותר שנדרש בטבלת ההספק.
לדוגמה:
משימה 1 לוקחת משבוע 3 עד שבוע 5 וצריך בשבילה 6 מפתחים.
משימה 2 לוקחת משבוע 21 עד 30 וצריך בשבילה 2 מפתחים.
משימה 3 לוקחת משבוע 4 עד שבוע 8 וצריך בשבילה 4 מפתחים.
אז מספר המפתחים הגבוה ביותר הוא 10 (שבוע 4 ושבוע 4 של משימות 3 ו1)
תשובות
הוסף תשובה
|
לצפיה בתשובות
יולי 2023
שבוע 4 ושבוע 5, תיקון.
אוגוסט 2023
1. תשובה ראשונה – נעשה מערך ובגודל של כל השבועות – כל אינקס יכיל שבוע ונעבור על כל המערך אובייקטים ונמלא את הערכים - n ברבוע כי יכול להיות אובייקט שמכיר את כל השבועות
2. התשובה היא רשימה מקושרת , כל איבר הוא או התחלה או סיןם נכניס את הערכים לרשימה בעזרת הטיים סטאמפ . בסוף נעבור על כל הטבלה ... אם זה איבר התחלה נוסיף ואם זה איבר סיוט נוריד ... נחשב כל הדרך את המקסימום ונשמור את הnode התחלה של האיבר המקסימום – ההתחלה זה האיבר הזה והסוף זה הnnode הבא
סיבוכיות הכנסה זה nlogn אם המערך ממוין – אפשר למיין פעמיים לפי זמן התחלה ולפי זמן סיןם – אחרת n בריבוע
1) המרת מספר דצמלי למספר רומאני.
2) לכתוב פונקציה שמקבלת 4 או 7 ומחזירה 7 אם קבלה 4 ו 4 אם קבלה 7
3) יש לך שני QUEUE:
A ו B. שכל אחד מהם עושה את הפעולות: lock, unlock, push, pop. מהו סדר הפעולות כדי ש A יכתוב ל B.
תשובות
הוסף תשובה
|
לצפיה בתשובות
יולי 2022
1) לבנות dictionary שמכיל את המספרים 1,4,5,9,10,90,100 וכו' כל אחד וה value שלו הוא הייצוג הרומאני. ואז לעבור על המספר העשרוני בשיטת ה % ולחפש את המספר ב dictionary. אם לא נמצא אז נחפש את הקטן ממנו ונכתוב...
2) dictionary או XOR עם 3 או ערך מוחלט של x-4-7 או if else
3) הסדר הוא: lock(A) lock(B) pop(A) push(B) unlock(A) unlock (B)
ולשיפור תעשה lock קודם ל queue שנמצא בזכרון קודם כך לא ייצר deadlock.
להשתמש ב bubble sort בלולאה של פעמיים. כך יתמיינו 3 הצבעים.
יוני 2023
להשתמש ב3 מערכים שונים, כל מערך מייצג מיקום של הצבע במערך המקורי, ולבסוף לרוץ על כל אחד מהמערכים הללו.
נובמבר 2023
מכיוון שאנחנו יודעים שיש רק 3 צבעים (נקרא להם 1, 2 ו- 3) אז ניתן לפתור בזמן לינארי בשני מעברים על המערך (a).
נחזיק שני משתנים סוכמים: a1 ו- a2, סוכם עבור צבע 1 וסוכם עבור צבע 2 בהתאמה. נאפס אותם בתחילת ריצה.
במעבר הראשון בכל פעם שניתקל בצבע 1 נוסיף 1 ל- a1 וכשנראה את צבע 2 נוסיף 1 ל- a2.
במעבר השני נמלא את תחילת המערך המקורי ב- 1 (לפי הכמות ב- a1) ואז נמלא ב- 2 (לפי הכמות ב- a2) ואת מה שנשאר נמלא ב- 3.
נובמבר 2025
שימושש ב 3 מצביעים להתחלה לאמצע ולסוף
ומעבר על המערך בלולאת while
תוך שינוי הסדר לפי הכללים אם אתה 0 החלפה להתחלה והעלאת הערך של ההתחלה
וכך הלאה