Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program ThinkAbout;
- uses
- SysUtils;
- type
- ArrStr = array of string;
- ArrChr = array of Char;
- procedure FindLetters(arr: ArrStr; letters: ArrChr; var main: string;
- StrIndex, n: Integer);
- var
- temp: string;
- i: Integer;
- isEnd, IsFinal: Boolean;
- begin
- i := 0;
- isEnd := False;
- isFinal := False;
- while (I < n) and not isEnd do
- begin
- Temp := copy(main, StrIndex, length(arr[i]));
- If AnsiCompareStr(arr[i], temp) = 0 then
- begin
- Delete(main, StrIndex, length(arr[i]) - 1);
- Main[StrIndex] := letters[i];
- isEnd := True;
- end;
- Inc(i);
- end;
- Inc(StrIndex);
- If (main[length(main)] <> '0') and (main[length(main)] <> '1') then
- IsFinal := true;
- If not isFinal then
- FindLetters(arr, letters, main, StrIndex, n);
- end;
- var
- temp, main: string;
- tempChr: Char;
- n, i: Integer;
- letters: ArrChr;
- arr: ArrStr;
- begin
- Readln(n);
- SetLength(Letters, n);
- SetLength(arr, n);
- for i := 0 to n - 1 do
- begin
- Read(Letters[i]);
- read(tempChr);
- Readln(arr[i]);
- arr[i] := trim(arr[i]);
- end;
- Readln(main);
- FindLetters(arr, letters, main, 1, n);
- write(main);
- readln;
- end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement