题意:
代码实现:
#include<iostream>
#include<cmath>
using namespace std;
int main()
{
int N,x,y;
char A;
cin>>N;
cin>>A;
double sourse;
//计算层数
sourse=N+1;
sourse=sourse/2;
int value=static_cast<int>(sqrt(sourse));
int answer=value*value*2-1;
//输出上半部分
for(x=1;x<=value;x++){
for(y=1;y<=value*2-x/*此处小坑*/;y++){
if(x<=y)
cout<<A;
else
cout<<' ';
}
cout<<endl;
}
//输出下半部分
for(x=1;x<value;x++){
for(y=1;y<=value+x;y++)
{
if(x+y>=value)
cout<<A;
else
cout<<' ';
}
cout<<endl;
}
cout<<(N-answer);
return 0;
}