חידת LeetCode Solution - Strong Password Checker, פתרון ליטקוד, LeetCode Solution, לפתור שאלות ב LeetCode, מדעי המחשב, תכנות מחשבים, לעבוד בהייטק, ללמוד תכנות מחשבים, להיות מתכנת, ללמוד לתכנת, הכנה לראיון טכני, ראיון עבודה בהייטק, שאלות ליטקוד, פיתוח תוכנה, איך לכתוב קוד? ללמוד לכתוב קוד, חידות היגיון, ללמוד לחשוב, ללמוד לנתח דברים, ללמוד לפרק לגורמים, ללמוד לחלק לחלקים, ללמוד למצוא חוקיות, איך לחלק לחלקים? איך למצוא חוקיות? איך לנתח תהליכים?... הבאים: 1 - אורך הסיסמה הוא בין 6 לבין 20 תווים, לא יותר ולא פחות. 2 - הסיסמה חייבת להכיל לפחות: אות 1 קטנה (abc-z) + אות 1 גדולה (ABC-Z) + מספר 1 כלשהו (123-0). 3 - אסור שהסיסמה ... נתון נוסף שנותנים לנו הוא, שסיסמה יכולה להיות בין אורך של 1 לאורך של 50. וגם סיסמה יכולה יכולה להכיל נקודה . או סימן קריאה ! כתווים חוקיים. אז שוב השאלה היא: אנחנו מקבלים סיסמה, ועלינו לומר מהו מינימום ... האם היינו יודעים לפתור את המקרה הזה? וגם כאן אפשרי להתחיל מצורת שאלה עוד יותר פשוטה: נניח סיסמה חייבת להכיל לפחות תו 1 בלבד. האם היינו יודעים איך לפתור שאלה כזו? זה המקרה הפשוט ביותר שעלינו לנסות להתחיל לפתור ... להיות תקינה. ועד כאן בעצם היתה דוגמה לאיך לחלק לחלקים קטנים. עכשיו נעבור לחוק מספר 2 שאומר שהסיסמה צריכה להכיל לפחות אות 1 קטנה + אות 1 גדולה + מספר 1. וננסה להבין איך אפשרי לחלק את זה לחלקים קטנים. אז נשאל, האם אני יודע לפתור את השאלה במידה ויש רק חוק 1 שאומר שהסיסמה צריכה להכיל אות 1 קטנה. בלי להתייחס לאות גדולה או מספר. ונחלק לחלק יותר קטן, איך נפתור את השאלה, במידה ויש חוק שאומר שהסיסמה צריכה להכיל את האות a הקטנה. דהיינו, לא נשאל על חוק שאומר שהסיסמה צריכה להכיל אות אחת קטנה כלשהי, אלא כן נשאל על מקרה יותר פשוט, שהסיסמה צריכה להכיל אות אחת ספציפית, כי זה מקרה שיותר קל לפתור. כי יותר קל לדעת אם הסיסמה מכילה אות 1 ספציפית, ... מאשר לחשוב איזו אות קטנה עלינו להוסיף, במידה ואין שום אות קטנה כלשהי. ולכן נשאל מה אם: הסיסמה צריכה להכיל את האות a הסיסמה צריכה להכיל את האות b הסיסמה צריכה להכיל אות ספציפית כלשהי ואם יש לנו תשובה, אז נשאל, מה אם: הסיסמה צריכה להכיל אות אחת קטנה כלשהי? והתשובה לכך היא, שעלינו לבדוק האם הסיסמה מכילה אות 1 קטנה כלשהי. ואם לא, אז ... קטנה או פעולה 1 של החלפה של אות כלשהי, לאות קטנה, כדי שהסיסמה תהיה חוקית. ומה אם הסיסמה צריכה להכיל אות 1 גדולה? ומה אם הסיסמה צריכה להכיל ספרה אחת כלשהי? אז אם יש לנו תשובה גם לזה, אז נשאל מה אם: הסיסמה צריכה להכיל את האות a הקטנה ואת האות A הגדולה? ואם הסיסמה צריכה להכיל אות 1 קטנה כלשהי ואות אחת גדולה כלשהי? ואם הסיסמה צריכה להכיל אות אחת קטנה כלשהי אות אחת גדולה כלשהי וספרה אחת כלשהי? וכאן דילגתי קצת על חלקים ועל שאלות יותר ... שהיה אפשרי לחלק את זה למקרים יותר קטנים. אז מי שיתבונן יראה, כי חוק מספר 2 שאומר שהסיסמה צריכה להכיל אות 1 קטנה גדולה וספרה, בעצם אומר ש: עלינו לבדוק האם חסרה אות קטנה / גדולה / מספר, ואז ... 123456Aa או יכול להיות 12345Aa או יכול להיות 1234Aa וכולי. ועכשיו נעבור לחוק מספר 3 שאומר, שסיסמה לא יכולה להכיל 3 תווים או יותר רצופים. ונשאל, האם נדע לפתור מקרה לדוגמה שאסור שיהיה תו ספציפי רצוף, לדוגמה AAA? והתשובה ... וכך עלינו להמשיך ולבדוק ידנית עוד מקרים, מבחינתי עד 20 תווים רצופים, שזה המספר המקסימאלי של התווים שהסיסמה יכולה להכיל. ועכשיו עלינו לבצע עוד סוג של בדיקות ידניות, ולחלק לחלקים בצורה הבאה: נניח שהיתה רק פעולה אחת אפשרית, פעולה ... במידה ויש לנו 2 חוקים שהם: 1 - האורך חייב להיות בין X לבין Y 2 - הסיסמה חייבת להכיל אות קטנה / גדולה / מספר במידה ואלו 2 החוקים שנותנים לנו, האם נדע לפתור את השאלה? ומה אם ... יחזור על עצמו 3 פעמים או יותר ומה אם היו לנו את 2 החוקים הבאים: 1 - הסיסמה חייבת להכיל אות קטנה / גדולה / מספר 2 - אסור שתו יחזור על עצמו 3 פעמים או יותר ומה אם היו לנו את 3 החוקים המלאים: 1 - האורך חייב להיות בין X לבין Y 2 - הסיסמה חייבת להכיל אות קטנה / גדולה / מספר 3 - אסור שתו יחזור על עצמו 3 פעמים או יותר עכשיו כמובן ...