轻绘 @ 2020-10-06 16:05:45
#include<bits/stdc++.h>
using namespace std;
int n;
int a[200];
void out1(int x){
if(x==0){
printf("XXX");
}
if(x==1){
printf("..X");
}
if(x==2){
printf("XXX");
}
if(x==3){
printf("XXX");
}
if(x==4){
printf("X.X");
}
if(x==5){
printf("XXX");
}
if(x==6){
printf("XXX");
}
if(x==7){
printf("XXX");
}
if(x==8){
printf("XXX");
}
if(x==9){
printf("XXX");
}
}
void out2(int x){
if(x==0){
printf("X.X");
}
if(x==1){
printf("..X");
}
if(x==2){
printf("..X");
}
if(x==3){
printf("..X");
}
if(x==4){
printf("X.X");
}
if(x==5){
printf("X..");
}
if(x==6){
printf("X..");
}
if(x==7){
printf("..X");
}
if(x==8){
printf("X.X");
}
if(x==9){
printf("X.X");
}
}
void out3(int x){
if(x==0){
printf("X.X");
}
if(x==1){
printf("..X");
}
if(x==2){
printf("XXX");
}
if(x==3){
printf("XXX");
}
if(x==4){
printf("XXX");
}
if(x==5){
printf("XXX");
}
if(x==6){
printf("XXX");
}
if(x==7){
printf("..X");
}
if(x==8){
printf("XXX");
}
if(x==9){
printf("XXX");
}
}
void out4(int x){
if(x==0){
printf("X.X");
}
if(x==1){
printf("..X");
}
if(x==2){
printf("X..");
}
if(x==3){
printf("..X");
}
if(x==4){
printf("..X");
}
if(x==5){
printf("..X");
}
if(x==6){
printf("X.X");
}
if(x==7){
printf("..X");
}
if(x==8){
printf("X.X");
}
if(x==9){
printf("..X");
}
}
void out5(int x){
if(x==0){
printf("XXX");
}
if(x==1){
printf("..X");
}
if(x==2){
printf("XXX");
}
if(x==3){
printf("XXX");
}
if(x==4){
printf("..X");
}
if(x==5){
printf("XXX");
}
if(x==6){
printf("XXX");
}
if(x==7){
printf("..X");
}
if(x==8){
printf("XXX");
}
if(x==9){
printf("XXX");
}
}
int main(){
//freopen("2.out","w",stdout);
scanf("%d",&n);
getchar();
for(int i=1;i<=n;i++){
char x;
x=getchar();
a[i]=x-'0';
}
for(int i=1;i<=n;i++){
out1(a[i]);
if(i!=n){
printf(".");
}
}
printf("\n");
for(int i=1;i<=n;i++){
out2(a[i]);
if(i!=n){
printf(".");
}
}
printf("\n");
for(int i=1;i<=n;i++){
out3(a[i]);
if(i!=n){
printf(".");
}
}
printf("\n");
for(int i=1;i<=n;i++){
out4(a[i]);
if(i!=n){
printf(".");
}
}
printf("\n");
for(int i=1;i<=n;i++){
out5(a[i]);
if(i!=n){
printf(".");
}
}
printf("\n");
return 0;
}
和答案输出一模一样,全WA
by haraki @ 2020-10-06 16:10:10
@上杉越 您在输出第一个字符的时候,前面应当没有那一列.
请自查 谢谢
by DIgnited @ 2020-10-06 16:11:21
打表
by 洛璟 @ 2020-10-06 16:14:10
@haraki_argon hxd你看看没有多输出的,也说了和样例输出一模一样,这点没必要说
by 轻绘 @ 2020-10-06 16:14:11
@haraki_argon 您仔细看我在第一个字符前没输‘.’
by Wu_Ren @ 2020-10-06 16:22:18
@上杉越
兄啊,在 windows
下换行符是 \r\n
所以输入里的
scanf("%d",&n);
getchar();
要改成
scanf("%d",&n);
getchar();getchar();
by haraki @ 2020-10-06 16:22:25
@上杉越 我详细看了代码。通过洛谷IDE的调试,估计是linux下的换行符不同的原因,是\r\n
。建议不要使用getchar读换行符,使用string或者char[]读入再分析。
by 轻绘 @ 2020-10-06 16:26:03
@Wu_Ren 是这个问题 谢谢帮忙
非常感谢
by 轻绘 @ 2020-10-06 16:26:37
@haraki_argon 是这个问题 真的很感谢
by 轻绘 @ 2020-10-06 16:27:00
感谢各位大佬的帮助
by Accepted喵 @ 2020-10-06 16:28:15
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cmath>
#include<cstring>
using namespace std;
char W[10][5][3]={
{//0
'X','X','X',
'X','.','X',
'X','.','X',
'X','.','X',
'X','X','X',
},
{//1
'.','.','X',
'.','.','X',
'.','.','X',
'.','.','X',
'.','.','X',
},
{//2
'X','X','X',
'.','.','X',
'X','X','X',
'X','.','.',
'X','X','X',
},
{//3
'X','X','X',
'.','.','X',
'X','X','X',
'.','.','X',
'X','X','X',
},
{//4
'X','.','X',
'X','.','X',
'X','X','X',
'.','.','X',
'.','.','X',
},
{//5
'X','X','X',
'X','.','.',
'X','X','X',
'.','.','X',
'X','X','X',
},
{//6
'X','X','X',
'X','.','.',
'X','X','X',
'X','.','X',
'X','X','X',
},
{//7
'X','X','X',
'.','.','X',
'.','.','X',
'.','.','X',
'.','.','X',
},
{//8
'X','X','X',
'X','.','X',
'X','X','X',
'X','.','X',
'X','X','X',
},
{//9
'X','X','X',
'X','.','X',
'X','X','X',
'.','.','X',
'X','X','X',
}
};
int n;
char s[110];
int main(){
cin>>n;
for(int i=0;i<n;i++) cin>>s[i];
for(int i=0;i<5;i++){
for(int j=0;j<n;j++){
for(int k=0;k<3;k++){
cout<<W[s[j]-'0'][i][k];
}
if(j!=n-1) cout<<'.';
}
cout<<endl;
}
return 0;
}