Cod sursa(job #2715331)

Utilizator crismariuCrismariu Codrin crismariu Data 3 martie 2021 15:47:08
Problema Potrivirea sirurilor Scor 40
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.93 kb
#include <bits/stdc++.h>
#pragma GCC optimize("O3")
#define test " test "
#define ll long long
#define pii pair<int, int>
#define FASTIO   \
    cin.tie(0);  \
    cout.tie(0); \
    ios_base::sync_with_stdio(0);
#define FILES                      \
    freopen("strmatch.in", "r", stdin); \
    freopen("strmatch.out", "w", stdout);
#define testcase             \
    int T;    \
    cin >> T; \
    while (T--)
#define vec vector<int>
using namespace std;

signed main()
{
    FILES
    map<deque<char>, vector<int>> m;
    deque <char> a, b;
    string c, d;
    cin >> c >> d;
    for(int i = 0; i < c.size(); i++)
        a.push_back(c[i]), b.push_back(d[i]);
    m[b].push_back(0);
    for(int i = c.size(); i < d.size(); i++)
        b.pop_front(), b.push_back(d[i]), m[b].push_back(i - c.size() + 1);
    vec v = m[a];
    cout << v.size() << '\n';
    for(auto i : v)
        cout << i << ' ';
    return 0;
}