Вопрос задан 25.06.2023 в 15:43. Предмет Алгебра. Спрашивает Павлова Анна.

B. AB ограничение по времени на тест1 секунда ограничение по памяти на тест256 мегабайт

вводстандартный ввод выводстандартный вывод Вам даны две строки s и t, которые состоят из букв 'a' и 'b'. В строке s нет соседних одинаковых букв. Вы хотите выбрать наибольшее количество непересекающихся подпоследовательностей t, которые равны s. Подпоследовательность — это такая последовательность строки, которая может быть получена удалением нескольких (возможно ноль) элементов из этой строки. Найдите максимальное количество подпоследовательностей, которое вы сможете выбрать. Входные данные Первая строка входных данных содержит одну строку s (1≤|s|≤4). Гарантируется, что в строке s нет соседних одинаковых букв. Вторая строка входных данных содержит одну строку t (1≤|t|≤105). Выходные данные Выведите одно целое число — максимальное количество подпоследовательностей, которое вы сможете выбрать. Система оценки Данная задача содержит 7 подзадач, в которых выполняются следующие ограничения: Тесты из условия. Оценивается в 0 баллов. |s|=1. Оценивается в 11 баллов. |s|=2. Оценивается в 14 баллов. |s|=3. Оценивается в 20 баллов. |s|=4, |t|≤50. Оценивается в 18 баллов. |s|=4, |t|≤300. Оценивается в 12 баллов. |s|=4, |t|≤105. Оценивается в 25 баллов. Примеры входные данные ab abbaba выходные данные 2 входные данные aba ababaa выходные данные 2
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Лошманов Никита.

#include <bits/stdc++.h>

#define no cout << "NO" << endl

#define yes cout << "YES" << endl

#define fast ios_base::sync_with_stdio(0);cin.tie(NULL);cout.tie(NULL)

typedef long long ll;

const int MAXN = 2e5 + 5;

const ll mod = 1e9 + 7;

 

using namespace std;

int n, m, k;

int id[505][505], cnt = 0, v, b[MAXN], pov[MAXN], ans = 0, sum;

int main() {

  fast;

cout << "im retarded";

}

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.
python
s = input().strip() t = input().strip() def count_subsequences(s, t): s_len = len(s) t_len = len(t) # Initialize a table to store the number of subsequences. # dp[i][j] will represent the number of subsequences of t[0..j] that equal s[0..i]. dp = [[0] * (t_len + 1) for _ in range(s_len + 1)] # Initialize the first column with 1, as an empty string is always a subsequence. for i in range(s_len + 1): dp[i][0] = 1 # Fill in the dp table using dynamic programming. for i in range(1, s_len + 1): for j in range(1, t_len + 1): # If the current characters match, we have two options: # 1. Include the current character of t and the previous characters of both s and t. # 2. Exclude the current character of t and consider the previous characters of t. if s[i - 1] == t[j - 1]: dp[i][j] = dp[i - 1][j - 1] + dp[i][j - 1] else: # If the characters don't match, we can only consider the previous characters of t. dp[i][j] = dp[i][j - 1] return dp[s_len][t_len] result = count_subsequences(s, t) print(result)

You can use this Python code to solve the problem. It defines a function count_subsequences that calculates the maximum number of non-overlapping subsequences of t that equal s. Then, it reads the input values, calls the function, and prints the result.

0 1

Похожие вопросы

Топ вопросов за вчера в категории Алгебра

Последние заданные вопросы в категории Алгебра

Задать вопрос