Форум программистов, компьютерный форум, киберфорум
Наши страницы

можно ли вставить между буквами первой строки буквы второй - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Собственно реализация http://www.cyberforum.ru/cpp-beginners/thread386924.html
Помогите реальзовать программу... Нужно,при запуске был текст приветствия. После нужно ввести команду "text1" Появляется сообщение. Потом человек прописывает команду "exit" и у него выдает...
C++ Многопоточность в объекте Доброго времени суток! Хочу создавать поток вызывая метод класса. Для этого: #include <iostream> #include <process.h> #include <cstdlib> #include "windows.h" http://www.cyberforum.ru/cpp-beginners/thread386921.html
C++ Дана целочисленная прямоугольная матрица
Дана целочисленная прямоугольная матрица: m = {{ 16, 78, 0, 6, -29, 19, -52, 65, -88, 51}, { -79, -22, 32, -25, -62, -69, -2, -59, -75, 89}, { -87, 95, -22, 85, -49,...
Не пойму как организовать алгоритм C++
Привет!... Не пойму как можно организовать алгоритм, имитирующий алгоритм планирования "Самый короткий процесс - следующий". В принцепи вообще мало чего знаю о программировании на C++, но всё же...
C++ Единичная матрица http://www.cyberforum.ru/cpp-beginners/thread386914.html
Пытаюсь написать программу, которая выводит на экран Единичную матрицу размера nxn. Написал код, он не работает, точнее вывод на экран все элементы в один ряд. И что-то мне подсказывает, что это...
C++ Даны натуральные числа m и n Даны натуральные числа m и n, целые числа a1,...,an, b1,...,bm, c1,...,c30. Получить l= \begin{cases} & \min({b}_{1},...,{b}_{m})+min({c}_{1},...,{c}_{30}){ if } \left|... подробнее

Показать сообщение отдельно
Alisia
0 / 0 / 0
Регистрация: 05.11.2011
Сообщений: 23

можно ли вставить между буквами первой строки буквы второй - C++

19.11.2011, 01:29. Просмотров 475. Ответов 0
Метки (Все метки)

Вот задачка:
аны две строки - A и B. Спрашивается, можно ли вставить между буквами первой строки буквы второй, сохранив их относительный порядок, таким образом, чтобы получилась строка C. При этом необходимо использовать все буквы строк A и B.

Входные данные
В первой строке находится натуральное число T (1 <= T <= 20) - количество тестов во входном файле. Далее для каждого теста даны три непустые строки (A, B и C), состоящие из больших и маленьких латинских букв. Длины строк не превосходят 200 символов.

Выходные данные
Для каждого теста выведите на отдельной строке Yes, если возможно заданным образом получить строку C и No в противном случае.

Пример

Ввод
3
BACA
ABA
ABACABA
BACA
ABA
ABACABADABACABA
BACA
ABA
ABA

Вывод
Yes
No
No

вот мой код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#include <iostream>
#include <string>
using namespace std;
 
const int MAXN = 200;
 
int arr[MAXN][MAXN];
string a;
string b;
string c;
 
int calc (int i, int j)
{
    if (arr[i][j] != -1)
        return arr[i][j];
    if (i == 0 && j == 0)
        arr[i][j] = 1;  
    else
    {
        arr[i][j] = 0;
        if (i > 0 && a[i-1] == c[i + j - 1] && calc(i - 1, j) == 1)
            arr[i][j] = 1;
        if (j > 0 && b[j - 1] == c[i + 1 -1] && calc(i, j - 1) == 1)
            arr[i][j] = 1;
    }
 
    return arr[i][j];
 
}
 
int main () 
{   
    int n;
    cin >> n;
    for (int i = 0; i < n; i++)
        getline (cin, a), getline (cin, b), getline (cin, c);
 
 
    memset (arr, -1, sizeof(arr));
 
    if (calc (n, n))
        cout << "YES" << endl;
    else
        cout << "NO" << endl;
 
    return 0;
}
Подскажите, где фигню я делаю? и как исправить. сама не допираю ((
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.