سنکوپ به معنای تأکید روی ضرب ضعیف یک میزان موسیقی است؛ معمولاً روی ضربهای ۲ و ۴ (و تمام ضربهای زوج دیگر در صورت وجود) انجام میشود.
به شما یک رشته داده میشود که ضربها را نمایش میدهد؛ در این رشته، علامت # نشاندهنده ضربهای تأکید شده است. یک تابع بنویسید که بررسی کند آیا این خط موسیقی شامل هرگونه سنکوپ (تأکید روی ضربهای زوج) است یا خیر. در صورت وجود سنکوپ، True و در غیر این صورت False برگردانید.
مثال
has_syncopation(".#.#.#.#") ➞ True
# علامت # در موقعیتهای دوم، چهارم، ششم و هشتم قرار دارد.
has_syncopation("#.#...#.") ➞ False
# علامت # در موقعیتهای دوم، چهارم، ششم یا هشتم قرار ندارد.
نمونه ورودی و خروجی
HasSyncopation(".#.#.#.#") ➞ True
HasSyncopation("#.#...#.") ➞ False
HasSyncopation("#.#.###.") ➞ True
Assert.True(Backendbaz.HasSyncopation(".#.#.#.#"));
Assert.False(Backendbaz.HasSyncopation("#.#...#."));
Assert.True(Backendbaz.HasSyncopation("#.#.###."));
Assert.True(Backendbaz.HasSyncopation("##"));
Assert.True(Backendbaz.HasSyncopation("####...."));
Assert.False(Backendbaz.HasSyncopation("#"));
Assert.True(Backendbaz.HasSyncopation(".#"));
نظرات