problemscpp
A collection of my answers to algorithm problems in c++.
函数
pat::b::b1109 命名空间参考

1109 擅长C 更多...

函数

int main (istream &cin, ostream &cout)
 
 TEST (b1109, case1)
 

详细描述

1109 擅长C

函数说明

◆ main()

int pat::b::b1109::main ( istream &  cin,
ostream &  cout 
)

在文件 pat.cpp3856 行定义.

3856 {
3857 char matrix[26][7][5];
3858 for(int i = 0; i < 26; i++) {
3859 for(int j = 0; j < 7; j++) {
3860 for(int k = 0; k < 5; k++) {
3861 cin >> matrix[i][j][k];
3862 }
3863 }
3864 }
3865 vector<string> vec;
3866 ostringstream oss;
3867 char ch;
3868 cin >> noskipws;
3869 while(cin >> ch) {
3870 if(isupper(ch) != 0) {
3871 oss << ch;
3872 } else {
3873 if(!oss.str().empty()) {
3874 vec.emplace_back(oss.str());
3875 }
3876 oss = ostringstream();
3877 }
3878 }
3879 if(!oss.str().empty()) {
3880 vec.emplace_back(oss.str());
3881 }
3882 int cnt = 0;
3883 for(const auto &str: vec) {
3884 const int w = str.length() * 6 - 1;
3885 vector output(7, vector(w, ' '));
3886 for(int i = 0; i < str.length(); i++) {
3887 const char c = str[i];
3888 for(int j = 0; j < 7; j++) {
3889 for(int k = 0; k < 5; k++) {
3890 output[j][i * 6 + k] = matrix[c - 'A'][j][k];
3891 }
3892 }
3893 }
3894 for(int i = 0; i < 7; i++) {
3895 for(int j = 0; j < w; j++) {
3896 cout << output[i][j];
3897 }
3898 if(i != 6) {
3899 cout << endl;
3900 }
3901 }
3902 if(cnt++ != vec.size() - 1) {
3903 cout << endl
3904 << endl;
3905 }
3906 }
3907 return 0;
3908 }
int vec[100010]
Definition: pat.cpp:5095

引用了 pat::a::a7_2::vec.

被这些函数引用 TEST().

◆ TEST()

pat::b::b1109::TEST ( b1109  ,
case1   
)

在文件 pat_test.cpp1915 行定义.

1915 {
1916 istringstream in("..C..\n.C.C.\nC...C\nCCCCC\nC...C\nC...C\nC...C\nCCCC.\nC...C\nC...C\nCCCC.\nC...C\nC...C\nCCCC.\n.CCC.\nC...C\nC....\nC....\nC....\nC...C\n.CCC.\nCCCC.\nC...C\nC...C\nC...C\nC...C\nC...C\nCCCC.\nCCCCC\nC....\nC....\nCCCC.\nC....\nC....\nCCCCC\nCCCCC\nC....\nC....\nCCCC.\nC....\nC....\nC....\nCCCC.\nC...C\nC....\nC.CCC\nC...C\nC...C\nCCCC.\nC...C\nC...C\nC...C\nCCCCC\nC...C\nC...C\nC...C\nCCCCC\n..C..\n..C..\n..C..\n..C..\n..C..\nCCCCC\nCCCCC\n....C\n....C\n....C\n....C\nC...C\n.CCC.\nC...C\nC..C.\nC.C..\nCC...\nC.C..\nC..C.\nC...C\nC....\nC....\nC....\nC....\nC....\nC....\nCCCCC\nC...C\nC...C\nCC.CC\nC.C.C\nC...C\nC...C\nC...C\nC...C\nC...C\nCC..C\nC.C.C\nC..CC\nC...C\nC...C\n.CCC.\nC...C\nC...C\nC...C\nC...C\nC...C\n.CCC.\nCCCC.\nC...C\nC...C\nCCCC.\nC....\nC....\nC....\n.CCC.\nC...C\nC...C\nC...C\nC.C.C\nC..CC\n.CCC.\nCCCC.\nC...C\nCCCC.\nCC...\nC.C..\nC..C.\nC...C\n.CCC.\nC...C\nC....\n.CCC.\n....C\nC...C\n.CCC.\nCCCCC\n..C..\n..C..\n..C..\n..C..\n..C..\n..C..\nC...C\nC...C\nC...C\nC...C\nC...C\nC...C\n.CCC.\nC...C\nC...C\nC...C\nC...C\nC...C\n.C.C.\n..C..\nC...C\nC...C\nC...C\nC.C.C\nCC.CC\nC...C\nC...C\nC...C\nC...C\n.C.C.\n..C..\n.C.C.\nC...C\nC...C\nC...C\nC...C\n.C.C.\n..C..\n..C..\n..C..\n..C..\nCCCCC\n....C\n...C.\n..C..\n.C...\nC....\nCCCCC\nHELLO~WORLD!");
1917 auto out = ostringstream();
1918 main(in, out);
1919 const auto ans = out.str();
1920 ASSERT_EQ("C...C CCCCC C.... C.... .CCC.\n"
1921 "C...C C.... C.... C.... C...C\n"
1922 "C...C C.... C.... C.... C...C\n"
1923 "CCCCC CCCC. C.... C.... C...C\n"
1924 "C...C C.... C.... C.... C...C\n"
1925 "C...C C.... C.... C.... C...C\n"
1926 "C...C CCCCC CCCCC CCCCC .CCC.\n"
1927 "\n"
1928 "C...C .CCC. CCCC. C.... CCCC.\n"
1929 "C...C C...C C...C C.... C...C\n"
1930 "C...C C...C CCCC. C.... C...C\n"
1931 "C.C.C C...C CC... C.... C...C\n"
1932 "CC.CC C...C C.C.. C.... C...C\n"
1933 "C...C C...C C..C. C.... C...C\n"
1934 "C...C .CCC. C...C CCCCC CCCC.",
1935 out.str());
1936 }
int main(int argc, char **argv)
Definition: main.cpp:5

引用了 main().