크로스워드 만들기

면접 대비

시간 제한1초메모리 제한128 MB

요약
단어 A를 가로로, B를 세로로 배치하면서 정해진 규칙에 따라 첫 공통 글자에서 교차시키고 나머지 칸을 점으로 채운 격자를 출력합니다.
난이도

쉬움10점 중 3점

유형
문자열, 구현, 시뮬레이션
정답자
아직 제출이 없습니다

문제

두 단어 A와 B로 크로스워드 모양의 격자를 만든다.

A는 가로로 한 번 쓰고, B는 세로로 한 번 쓴다. 두 단어는 정확히 한 글자를 공유하며 교차해야 한다. 공유할 글자는 두 단어에 모두 들어 있는 글자 중에서 다음 규칙으로 고른다.

  1. A를 왼쪽부터 확인하면서 B에도 들어 있는 첫 글자를 찾는다.
  2. 그 글자가 B에 여러 번 나오면 B에서 가장 먼저 나오는 위치를 사용한다.

선택한 글자가 만나는 칸에 A와 B를 놓고, 다른 빈 칸은 .으로 채운다.

입력

첫째 줄에 두 단어 A와 B가 공백으로 구분되어 주어진다. 두 단어의 길이는 각각 30 이하이며, 대문자 영어 알파벳으로만 이루어져 있다. 두 단어는 적어도 한 글자를 공유한다.

출력

B의 길이를 M, A의 길이를 N이라고 하자. 총 M줄을 출력하며, 각 줄에는 정확히 N개의 문자를 출력한다. 위 규칙에 따라 두 단어가 교차한 모양을 출력하고, 단어가 놓이지 않은 칸은 .으로 출력한다.

예제4

  1. 예제 1

    입력
    BANANA PIDZAMA
    
    예상 출력
    .P....
    .I....
    .D....
    .Z....
    BANANA
    .M....
    .A....
    
  2. 예제 2

    입력
    MAMA TATA
    
    예상 출력
    .T..
    MAMA
    .T..
    .A..
    
  3. 예제 3

    입력
    REPUBLIKA HRVATSKA
    
    예상 출력
    H........
    REPUBLIKA
    V........
    A........
    T........
    S........
    K........
    A........
    
  4. 예제 4

    입력
    ABBA CCBB
    
    예상 출력
    .C..
    .C..
    ABBA
    .B..