PTA新手刷题系列--打印沙漏
程序员文章站
2022-03-13 23:45:28
...
符号个数 | 最外层符号 |
---|---|
1 | 1 |
7 | 3 |
17 | 5 |
31 | 7 |
49 | 9 |
#include<iostream>
using namespace std;
int main()
{
int n,i;
char symbol;
cin>>n>>symbol;
i=1;
if(n<7){
cout<<symbol<<endl;
cout<<n-1;
}else{
int sum=1;
while((sum+=(2*i+1)*2)<=n){
i++;
}
int left=n-(sum-(2*i+1)*2);
i--;
for(int j=2*i+1;j>0;j-=2){
int blanks=(2*i+1-j)/2;
while(blanks--){
cout<<" ";
}
for(int w=j;w>0;w--){
cout<<symbol;
}
cout<<endl;
}
for(int j=3;j<=2*i+1;j+=2){
int blanks=(2*i+1-j)/2;
while(blanks--){
cout<<" ";
}
for(int w=j;w>0;w--){
cout<<symbol;
}
cout<<endl;
}
cout<<left;
}
return 0;
}
上一篇: NowCoder:元素查找(二分法)
下一篇: pm2查看当前应用运行的路径信息