358B - Dima and Text Messages - CodeForces Solution


brute force strings *1500

Please click on ads to support us..

Python Code:


tests = int(input())
texts = []
for _ in range(tests + 1):
    texts.append(input())

message = texts.pop()

res = ["<3"]
for z in texts:
    res.append(z)
    res.append("<3")
texte = "".join(res)

possible = True
indice = 0
for c in texte:
    if (z := message.find(c, indice)) > -1:
        indice = z+1
    else:
        possible = False
        break

if possible:
    print("yes")
else:
    print("no")

C++ Code:

#include <bits/stdc++.h>
using namespace std;
#define endl "\n"
#define ll long long
#define pb push_back
#define pi acos(-1)
#define IOS ios::sync_with_stdio(0); cin.tie(0); cout.tie(0);
const unsigned int M = 1000000007;

int main(int argc, char const *argv[]){
    IOS;
    int n;cin>>n;
    bool f=false;
    string s;
    for(int i=1;i<=n;i++){
        string s1;cin>>s1;
        s+="<3"+s1;
    }
    s+="<3";
    int l=s.length();
    string msg;cin>>msg;
    int l1=msg.length();
    int pos=0;
    for(int i=0;i<l1;i++){
        if(msg[i]==s[pos]){
            pos++;
        }
    }
    if(pos==l)cout<<"yes";
    else cout<<"no";
}


Comments

Submit
0 Comments
More Questions

1657B - XY Sequence
1009A - Game Shopping
1657A - Integer Moves
230B - T-primes
630A - Again Twenty Five
1234D - Distinct Characters Queries
1183A - Nearest Interesting Number
1009E - Intercity Travelling
1637B - MEX and Array
224A - Parallelepiped
964A - Splits
1615A - Closing The Gap
4C - Registration System
1321A - Contest for Robots
1451A - Subtract or Divide
1B - Spreadsheet
1177A - Digits Sequence (Easy Edition)
1579A - Casimir's String Solitaire
287B - Pipeline
510A - Fox And Snake
1520B - Ordinary Numbers
1624A - Plus One on the Subset
350A - TL
1487A - Arena
1520D - Same Differences
376A - Lever
1305A - Kuroni and the Gifts
1609A - Divide and Multiply
149B - Martian Clock
205A - Little Elephant and Rozdil