When your interviewer asks you to write “Hello World” using C, can you do as the following figure shows?
Input Specification:
Each input file contains one test case. For each case, the first part gives the 26 capital English letters A-Z, each in a 7×5 matrix of C’s and .'s. Then a sentence is given in a line, ended by a return. The sentence is formed by several words (no more than 10 continuous capital English letters each), and the words are separated by any characters other than capital English letters.
It is guaranteed that there is at least one word given.
Output Specification:
For each word, print the matrix form of each of its letters in a line, and the letters must be separated by exactly one column of space. There must be no extra space at the beginning or the end of the word.
Between two adjacent words, there must be a single empty line to separate them. There must be no extra line at the beginning or the end of the output.
Sample Input:
#csdn蜜汁不能折叠代码,这段太长了…大概就是26组7*5矩阵,比如A:
…C…
.C.C.
C…C
CCCCC
C…C
C…C
C…C
#blablablablablabla
#最后一行是给出的字符串:
HELLO~WORLD!
Sample Output:
C…C CCCCC C… C… .CCC.
C…C C… C… C… C…C
C…C C… C… C… C…C
CCCCC CCCC. C… C… C…C
C…C C… C… C… C…C
C…C C… C… C… C…C
C…C CCCCC CCCCC CCCCC .CCC.
C…C .CCC. CCCC. C… CCCC.
C…C C…C C…C C… C…C
C…C C…C CCCC. C… C…C
C.C.C C…C CC… C… C…C
CC.CC C…C C.C… C… C…C
C…C C…C C…C. C… C…C
C…C .CCC. C…C CCCCC CCCC.
思路&分析
输入26个字母的75的矩阵点状图,根据输入的字符串来输出点状格式的单词。
用二维数组(267)来存储每一行的字符串,整行读取,分割字符串成单词,三重循环输出每个单词的7行。
注意点:
- 输入为一整行,开头、中间、结尾都有可能有空格;
- 输入内容里的小写字母不算在单词内,也是作为分割单词的其它字符处理;
- 输出字母间的空格,单词间的空行;
提交代码(AC)
考场上不知为何getline(cin,str);
总是报错…不得不手搓了一个按字符读取,用回char[]数组;
#include <iostream>
#include <stdio.h>
#include <vector>
#include <queue>
#include <map>
#include <string>
#include <string.h>