Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Var
- a, b, buf, buf2 : string;
- BEGIN
- readln(a);
- readln(b);
- if a[length(a)]<>'*' then a := a+'*';
- buf := '';
- buf2 := b;
- while pos('**', a)<>0 do
- delete(a, pos('*', a), 1);
- if a[1]='*' then delete(a, 1, 1);
- if pos(copy(a, 1, pos('*', a)-1), b)<>1 then a := '*'+a;
- if a='*' then writeln('YES')
- else if pos('*', a)=length(a) then
- begin
- if pos(copy(a, 1, length(a)-1), b)=1 then
- writeln('YES')
- else writeln('NO');
- end
- else
- begin
- while true do
- begin
- buf := buf+copy(a, 1, pos('*', a)-1);
- delete(a, 1, pos('*', a));
- if length(a)=0 then break;
- buf := buf + copy(b, 1, pos(copy(a, 1, pos('*', a)-1), b)-1);
- delete(b, 1, pos(a[pos('*', a)-1], b));
- while pos(copy(a, 1, pos('*', a)-1), b)<0 do
- begin
- buf := buf + copy(b, 1, pos(copy(a, 1, pos('*', a)-1), b)-1);
- delete(b, 1, pos(a[pos('*', a)-1], b));
- end;
- end;
- if buf = buf2 then writeln('YES')
- else writeln('NO');
- end;
- readln;
- END.
Add Comment
Please, Sign In to add comment