החוקים של מחרוזת בשם diverse_string הם שאין יותר מ-2 אותיות ברצף אחת אחרי השניה. מקבלים 3 מספרים שמסמנים מספר האותיות מכל אות - a, b או c .
צריך להחזיר מחרוזת שעומדת בחוקים האלה שיש בה מספר האותיות כפי שהתקבל בפונקציה. אם לא ניתן לייצר כזאת מחרוזת - להחזיר מחרוזת ריקה.
פונקציה שמקבלת כמות A כמות B וכמות C
צריך להחזיר את המחרוזת המכילה את כמות האותיות הנדרש, כאשר אין יותר מ2 אותיות זהות צמודות
תשובות
הוסף תשובה
|
לצפיה בתשובות
יולי 2022
def diverse_string(a, b, c):
# no more than two letters one after the other
if a < 0 or b < 0 or c < 0:
return ""
counters = {'A': a, 'B': b, 'C': c}
st_ans = ""
for i in range(a+b+c):
invalid = st_ans[-1] if len(st_ans) >= 2 and st_ans[-1] == st_ans[-2] else ''
valid_letters = {key: value for (key, value) in counters.items() if value > 0 and key != invalid}
if len(valid_letters) == 0:
return "no diverse string"
max_letter = max(valid_letters, key=counters.get)
st_ans += max_letter
counters[max_letter] -= 1
return st_ans
יש ראיון קודיליטי (כמו leetcode ) ואז ראיון עם מראיינת
שאלות מתוך הראיון
-הסבר איך רקורסיה עובדת לילד בן 5
-ספר על פרוייקט שאתה גאה בו
-יש לך 9 כדורים ומוזניים , 8 בעלי משקל זהה ואחד כבד יותר ,מצא את הכבוד הכבד יותר באמצעות שני שקילות בלבד
תשובות
הוסף תשובה
|
לצפיה בתשובות
יולי 2022
שוקל 6 כדורים (3 ו -3) אם המשקל שווה אז הכדור הכבד נמצא ב-3 שלא השתמשנו בהם לכן אני אשקול 2 מתוכם אם הם שווים אז הכדור האחרון הנתור הוא הכבד אם לא אז אני פשט לוקח את הכבד (עד כה 2 שקילות).
חוזר אחורה, אם ה-6 ששקלתי (3 ו-3) לא זהים אני לוקח את ה-3 היותר כבדים ומחפש את הכבד בניהם בעזרת שקילה אחת כפי שכבר תארתי.
סה"כ 2 שקילות.
עוסקת בפיתוח, תכנות, שיווק ומתן זיכיונות למערכות הפעלה למחשבים, פתרונות תוכנה למגזר הפרטי והעסקי ומגוון פלטפורמות משולבות חומרה ותוכנה. בתחום המוצרים ללקוחות משווקת החברה מערכות הפעלה לשרתים, מחשבים אישיים ומחשבי כף יד.