题目背景
HNSDFZ的同学们为了庆祝春节,准备排练一场舞会。
题目描述
在越来越讲究合作的时代,人们注意的更多的不是个人物的舞姿,而是集体的排列。
为了配合每年的倒计时,同学们决定排出——“数字舞蹈”。顾名思义就是所有人一起排成若干个数字 -___-|||| 更为创新的是,每个人都是趴在地上,保证横竖。
现在给出数字及其要求摆出的大小,请你编程,模拟同学们的优美姿态。
输入输出格式
输入格式:
第一行为k。k表示要摆出数字的大小。
第二行为全部由数字组成的字符串,即要摆出的几个数字。
输出格式:
按题目要求输出。
输入输出样例
输入样例#1:
2 1234567890
输出样例#1:
-- -- -- -- -- -- -- -- | | | | | | | | | | | | | | | | | | | | | | | | | | | | -- -- -- -- -- -- -- | | | | | | | | | | | | | | | | | | | | | | | | | | -- -- -- -- -- -- --
说明
每个数字之前有1个空格,所有数字全部对齐。
k<=30,s的长度不超过255
建议大家直接输出,不要保存。
如果对于大小和k有疑问,请自行理解。
找规律。。。
模拟。。。、
1 #include<iostream> 2 #include<cstdio> 3 #include<cstring> 4 #include<cmath> 5 using namespace std; 6 char a[438]; 7 void read(int & n) 8 { 9 char c='+';int x=0; 10 while(c<'0'||c>'9') 11 c=getchar(); 12 while(c>='0'&&c<='9') 13 { 14 x=x*10+(c-48); 15 c=getchar(); 16 } 17 n=x; 18 } 19 void kong() 20 {printf(" ");} 21 void heng() 22 {printf("-");} 23 void shu() 24 {printf("|");} 25 int main() 26 { 27 int n; 28 read(n); 29 scanf("%s",a); 30 int la=strlen(a); 31 for(int i=0;i<strlen(a);i++) 32 { 33 kong(); 34 if(a[i]=='1'||a[i]=='4') 35 { 36 for(int k=1;k<=n;k++) 37 kong(); 38 } 39 else 40 { 41 for(int k=1;k<=n;k++) 42 heng(); 43 } 44 kong(); 45 kong(); 46 } 47 printf(" "); 48 for(int l=1;l<=n;l++) 49 { 50 for(int i=0;i<la;i++) 51 { 52 if(a[i]=='1'||a[i]=='2'||a[i]=='3'||a[i]=='7') 53 { 54 for(int k=1;k<=n+1;k++) 55 kong(); 56 shu(); 57 } 58 59 else if(a[i]=='5'||a[i]=='6') 60 { 61 shu(); 62 for(int k=1;k<=n+1;k++) 63 kong(); 64 } 65 else 66 { 67 shu(); 68 for(int k=1;k<=n;k++) 69 kong(); 70 shu(); 71 } 72 kong(); 73 } 74 printf(" "); 75 } 76 for(int i=0;i<strlen(a);i++) 77 { 78 kong(); 79 if(a[i]=='1'||a[i]=='7'||a[i]=='0') 80 { 81 for(int k=1;k<=n;k++) 82 kong(); 83 } 84 else 85 { 86 for(int k=1;k<=n;k++) 87 heng(); 88 } 89 kong(); 90 kong(); 91 } 92 printf(" "); 93 for(int l=1;l<=n;l++) 94 { 95 for(int i=0;i<la;i++) 96 { 97 if(a[i]=='1'||a[i]=='3'||a[i]=='4'||a[i]=='5'||a[i]=='7'||a[i]=='9') 98 { 99 for(int k=1;k<=n+1;k++) 100 kong(); 101 shu(); 102 } 103 104 else if(a[i]=='6'||a[i]=='8'||a[i]=='0') 105 { 106 107 shu(); 108 for(int k=1;k<=n;k++) 109 kong(); 110 shu(); 111 } 112 else 113 { 114 shu(); 115 for(int k=1;k<=n+1;k++) 116 kong(); 117 } 118 kong(); 119 } 120 printf(" "); 121 } 122 for(int i=0;i<strlen(a);i++) 123 { 124 kong(); 125 if(a[i]=='1'||a[i]=='7'||a[i]=='4') 126 { 127 for(int k=1;k<=n;k++) 128 kong(); 129 } 130 else 131 { 132 for(int k=1;k<=n;k++) 133 heng(); 134 } 135 kong(); 136 kong(); 137 } 138 return 0; 139 }