2015-04-16 5 views
-3

я понятия не имею, как сделать этот вопрос ... пожалуйста, помогитепрограмма CircularShift, которая печатает верно, если две строки s и т, указанные в командной строке являются круговыми сдвигами друг друга, и ложь в противном случае

Строка, s - круговой сдвиг t, если он совпадает, когда символы циклически сдвинуты на любое число позиций; например, ACTGACG представляет собой круговой сдвиг TGACGAC и наоборот. Обнаружение этого условия важно при изучении геномных последовательностей . Напишите программу CircularShift, которая печатает true, если две строки s и t , указанные в командной строке, являются циклическими сдвигами друг друга, а false в противном случае. Подсказка: решение является однострочным с индексами(), length() и конкатенацией строк.

Мне нужно, чтобы получить эти ответы $ ява CircularShift TGACGAC ACTGACG правда $ ява CircularShift TGACGAC GACGAC ложь $ ява CircularShift TGACGAC TGACGAC правда

+0

Привет, добро пожаловать! Можете ли вы опубликовать то, что вы пробовали, и что не работает? –

ответ

5

Проверьте s и т имеют одинаковую длину и проверьте, s содержится в t, прилагаемом к себе.

Что касается вашего примера: проверьте, содержится ли ACTGACG в TGACGACTGACGAC. В этом примере вы найдете матч в позиции 5.

+0

Что мне нужно делать? – momo0801