Member 13602584 Ответов: 2

Может ли кто-нибудь, пожалуйста, указать, как сопоставить две строки, Если предыдущая уже введена


Дано n, которое является числом строк, принятых в качестве входных данных. Для каждого входного использования нужно напечатать “да” или “нет”, независимо от того, присутствует ли уже текущая строка или нет.

Ввод:
5
Вундеркинды
Привет
Отличный
Вундеркинды
Привет
Выход:

Нет
Нет
Нет
Да
Да

Что я уже пробовал:

bool isSubSequence(char str1[], char str2[], int m, int n)
{
    // Base Cases
    if (m == 0) return true;
    if (n == 0) return false;
 
    // If last characters of two strings are matching
    if (str1[m-1] == str2[n-1])
        return isSubSequence(str1, str2, m-1, n-1);
 
    // If last characters are not matching
    return isSubSequence(str1, str2, m, n-1);
}

Patrice T

И что же ?
у вас есть вопрос ?

2 Ответов

Рейтинг:
8

Member 13602584

Я новичок в программировании, не могли бы вы предоставить мне псевдокод


Richard MacCutchan

Вы пометили это C и Java, но что это такое?

Richard Deeming

1) это не решение вашей проблемы, а должно быть нет были размещены в поле "Добавить свое решение здесь".

2) ЭТО НЕ РЕШЕНИЕ ВАШЕЙ ПРОБЛЕМЫ, и не должны были быть помечены как "принятое" решение.

3) Мы не делаем за вас домашнюю работу.

Рейтинг:
18

KarstenK

подумайте о том, что должен делать ваш код: "посмотрите каждую новую строку, есть ли она уже в моем массиве?"

=> Так что вам нужно сделать цикл каждый раз через весь массив.
а) используйте цикл for
Б) когда вас найдут, вы закончите
в) после циклического перебора всех записей вы знаете, что не нашли их.
бонус: (только чем его добавить)

Вы можете использовать некоторые Учебник по C++ чтобы изучить основы.

Разработайте свой код и псевдокод самостоятельно, чтобы научиться программированию. Используйте всегда глагол и объекты.

Первый может быть: "попросите цифры для ввода"


Member 13602584

Не могли бы вы предоставить псевдокод, я новичок в программировании