"סיבוב שמאלה של מחרוזת" היא פעולה שבה התו הראשון של המחרוזת נמחק ומועבר לסופה.
לדוגמה: אם s = "ABCD" אזי תוצאת הפעולה היא: "BCDA". מחרוזת s2 היא "גלגול K" של מחרוזת s1 אם אפשר לקבל את מחרוזת s2 באמצעות K סיבובים שמאלה של מחרוזת s1. לדוגמה: אם s1 = "ABCDE" אזי s2 = "CDEAB" היא גלגול 2 של מחרוזת s1.
(א)כתבו פעולה המקבלת שתי מחרוזות s1 ו-s2 ומספר שלם חיובי k. הפעולה תבדוק אם מחרוזת s2 היא "גלגול K" של מחרוזת s1. אם כן – הפעולה תחזיר true, ולא – הפעולה תחזיר false.
כותרת הפעולה:
`public static bool IsKRolling(string s1, string s2, int k)`
כותרת הפעולה:
`public static bool IsKRolling(string s1, string s2, int k)`
(ב)כתבו פעולה המקבלת שתי מחרוזות s1 ו-s2. הפעולה תחזיר מספר שלם k שעבורו מחרוזת s2 היא "גלגול K" של מחרוזת s1. אם אין שום מספר k, הפעולה תחזיר -1.
כותרת הפעולה:
`public static int FindRollingK(string s1, string s2)`
כותרת הפעולה:
`public static int FindRollingK(string s1, string s2)`
(ג)כתבו פעולה המקבלת מערך מחרוזות arr ומחרוזת נוספת s. על הפעולה לבדוק אם כל המחרוזות שנמצאות ב-arr הן "גלגול K" כלשהו של המחרוזת s. אם כן – הפעולה תחזיר true, ולא – הפעולה תחזיר false.
כותרת הפעולה:
`public static bool AreAllRotations(string[] arr, string s)`
כותרת הפעולה:
`public static bool AreAllRotations(string[] arr, string s)`
🎓 לא הבנתם משהו? קבלו הסבר נוסף ממרצה בטיחות
שאלו כאן — ותקבלו מענה מוסמך.
רוצים לתרגל אלפי שאלות נוספות?
המשיכו לתרגול מלא עם משוב אישי ←מבחני מה"ט אמיתיים · משוב מיידי · וידאו לכל נושא · מעקב התקדמות