Posted on 2010-10-24 09:05
lzh525 阅读(446)
评论(0) 编辑 收藏 引用 所属分类:
ACM解题报告
//注意数组模板创建的重要性
1 #include<stdio.h>
2 #include<string.h>
3 char s[15];
4 char a[5][35]=
5 { "q-qq0qq-qq-qq0qq-qq-qq-qq-qq-q",
6 "|0|q0|q0|q0||0||0q|0qq0||0||0|",
7 "q0qq0qq-qq-qq-qq-qq-qq0qq-qq-q",
8 "|0|q0||0qq0|q0|q0||0|q0||0|q0|",
9 "q-qq0qq-qq-qq0qq-qq-qq0qq-qq-q"
10 };
11
12 int main()
13 {
14 int i,j,n,len,k,t,p,first=0;
15 // freopen("c:\\\\s.in","r",stdin);
16 // freopen("c:\\\\out2.out","w",stdout);
17 while(1)
18 {
19 if(first)
20 printf("\\n");
21 first=1;
22 scanf("%d",&n);
23 getchar();
24 scanf("%s",s);
25 if(n==0)
26 return 0;
27 len=strlen(s);
28
29 for(k=0;k<len;k++)
30 {
31 switch(s[k])
32 {
33 case '0':t=0;break;
34 case '1':t=3;break;
35 case '2':t=6;break;
36 case '3':t=9;break;
37 case '4':t=12;break;
38 case '5':t=15;break;
39 case '6':t=18;break;
40 case '7':t=21;break;
41 case '8':t=24;break;
42 case '9':t=27;break;
43 }
44 for(j=t;j<t+3;j++)
45 {
46 if(a[0][j]=='q')
47 printf(" ");
48 if(a[0][j]=='-')
49 for(p=1;p<=n;p++)
50 printf("-");
51 if(a[0][j]=='0')
52 for(p=1;p<=n;p++)
53 printf(" ");
54 }
55 if(k!=len-1)
56 printf(" ");
57
58 }
59 printf("\\n");
60 for(i=0;i<n;i++)
61 {
62 for(k=0;k<len;k++)
63 {
64 switch(s[k])
65 {
66 case '0':t=0;break;
67 case '1':t=3;break;
68 case '2':t=6;break;
69 case '3':t=9;break;
70 case '4':t=12;break;
71 case '5':t=15;break;
72 case '6':t=18;break;
73 case '7':t=21;break;
74 case '8':t=24;break;
75 case '9':t=27;break;
76 }
77 for(j=t;j<t+3;j++)
78 {
79 if(a[1][j]=='|')
80 printf("|");
81 if(a[1][j]=='0')
82 for(p=1;p<=n;p++)
83 printf(" ");
84 if(a[1][j]=='q')
85 printf(" ");
86 }
87 printf(" ");
88 }
89 if(k!=len-1)
90 printf("\\n");
91 }
92 for(k=0;k<len;k++)
93 {
94 switch(s[k])
95 {
96 case '0':t=0;break;
97 case '1':t=3;break;
98 case '2':t=6;break;
99 case '3':t=9;break;
100 case '4':t=12;break;
101 case '5':t=15;break;
102 case '6':t=18;break;
103 case '7':t=21;break;
104 case '8':t=24;break;
105 case '9':t=27;break;
106 }
107 for(j=t;j<t+3;j++)
108 {
109 if(a[2][j]=='q')
110 printf(" ");
111 if(a[2][j]=='-')
112 for(p=1;p<=n;p++)
113 printf("-");
114 if(a[2][j]=='0')
115 for(p=1;p<=n;p++)
116 printf(" ");
117 }
118 if(k!=len-1)
119 printf(" ");
120 }
121 printf("\\n");
122 for(i=0;i<n;i++)
123 {
124 for(k=0;k<len;k++)
125 {
126 switch(s[k])
127 {
128 case '0':t=0;break;
129 case '1':t=3;break;
130 case '2':t=6;break;
131 case '3':t=9;break;
132 case '4':t=12;break;
133 case '5':t=15;break;
134 case '6':t=18;break;
135 case '7':t=21;break;
136 case '8':t=24;break;
137 case '9':t=27;break;
138 }
139 for(j=t;j<t+3;j++)
140 {
141
142 if(a[3][j]=='|')
143 printf("|");
144 if(a[3][j]=='0')
145 for(p=1;p<=n;p++)
146 printf(" ");
147 if(a[3][j]=='q')
148 printf(" ");
149 }
150 if(k!=len-1)
151 printf(" ");
152 }
153 printf("\\n");
154 }
155 for(k=0;k<len;k++)
156 {
157 switch(s[k])
158 {
159 case '0':t=0;break;
160 case '1':t=3;break;
161 case '2':t=6;break;
162 case '3':t=9;break;
163 case '4':t=12;break;
164 case '5':t=15;break;
165 case '6':t=18;break;
166 case '7':t=21;break;
167 case '8':t=24;break;
168 case '9':t=27;break;
169 }
170 for(j=t;j<t+3;j++)
171 {
172 if(a[4][j]=='q')
173 printf(" ");
174 if(a[4][j]=='-')
175 for(p=1;p<=n;p++)
176 printf("-");
177 if(a[4][j]=='0')
178 for(p=1;p<=n;p++)
179 printf(" ");
180 }
181 if(k!=len-1)
182 printf(" ");
183 }
184 printf("\\n");
185
186 }
187 return 0;
188 }