// Codeforces Round #208 (Div. 2) B Dima and Text Messages
// Problem: http://codeforces.com/contest/358/problem/B
import java.io.*;
import java.math.*;
import java.util.*;
import org.omg.CORBA.Environment;
//Codeforces
public class MainCodeforces1 {
 private static MyScanner in;
 private static PrintStream out;
 private static boolean LOCAL_TEST = false;
 private static void solve() throws IOException
 {
  int n = in.nextInt();
  String[] s = new String[n];
  for (int i = 0; i < s.length; i++) {
   s[i] = in.nextLine();
  }
  String msg = in.nextLine();
  int pos = -1;
  boolean failed = false;
  for (int i = 0; i < s.length; i++) {
   pos = msg.indexOf("<", pos + 1);
   if (pos == -1) {
    failed = true;
    break;
   }
   pos = msg.indexOf("3", pos + 1);
   if (pos == -1) {
    failed = true;
    break;
   }
   for (int j = 0; j < s[i].length(); j++) {
    pos = msg.indexOf(s[i].charAt(j), pos + 1);
    if (pos == -1) {
     failed = true;
     break;
    }
   }
   if (pos == -1) {
    failed = true;
    break;
   }
  }
  if (!failed) {
   pos = msg.indexOf("<", pos + 1);
   if (pos == -1) {
    failed = true;
   }
   if (!failed) {
    pos = msg.indexOf("3", pos + 1);
    if (pos == -1) {
     failed = true;
    }
   }
  }
  if (failed)
   out.println("no");
  else
   out.println("yes");
 }
 public static void main(String[] args) throws IOException {
  // helpers for input/output
  out = System.out;
  try {
   String cname = System.getenv("COMPUTERNAME");
   if (!cname.equals(""))
    LOCAL_TEST = true;
  } catch (Exception e) {
  }
  if (LOCAL_TEST) {
   in = new MyScanner("E:\\zin.txt");
  }
  else {
   boolean usingFileForIO = false;
   if (usingFileForIO) {
    // using input.txt and output.txt as I/O
    in = new MyScanner("input.txt");
    out = new PrintStream("output.txt");
   }
   else {
    in = new MyScanner();
    out = System.out;
   }
  }
  solve();
 }
 // =====================================
 static class MyScanner {
  BufferedReader bufReader;
  StringTokenizer strTok;
  public MyScanner() throws IOException
  {
   bufReader = new BufferedReader(new InputStreamReader(System.in));
   strTok = new StringTokenizer("");
  }
  public MyScanner(String inputFile) throws IOException {
   bufReader = new BufferedReader(new InputStreamReader(
     new FileInputStream(
       inputFile)));
   strTok = new StringTokenizer("");
  }
  String GetNextToken() throws IOException {
   if (!strTok.hasMoreTokens())
    strTok = new StringTokenizer(bufReader.readLine());
   return strTok.nextToken();
  }
  public int nextInt() throws IOException {
   return Integer.valueOf(GetNextToken());
  }
  public long nextLong() throws IOException {
   return Long.valueOf(GetNextToken());
  }
  public double nextDouble() throws IOException {
   return Double.valueOf(GetNextToken());
  }
  public String nextString() throws IOException {
   return GetNextToken();
  }
  public String nextLine() throws IOException {
   return bufReader.readLine();
  }
  public int countTokens() {
   return strTok.countTokens();
  }
  public boolean hasMoreTokens() {
   return strTok.hasMoreTokens();
  }
 }
}
No comments:
Post a Comment