#include<iostream>usingnamespace std;intmain(){int n;char x;int number =1;int q =1;//q记录第一行,即最多字符的个数
cin >> n >> x;for(int i =3;; i +=2){//从第二行开始
number += i;
q = i;if((number -1)*2+1> n)//边界,即:用的字符超过n{
number -= i;//在进行判断边界的时候已经超过n,这里的作用是还原上一次,并且停止循环
q -=2;break;}}int p = q;//这里用p存q,因为输出的时候q需要变化while(q >=1)// 输出上部分{for(int i =1; i <=(p - q)/2; i ++)
cout <<' ';for(int i =1; i <= q;++ i )
cout << x;
cout << endl;
q -=2;}
q =3;//起始为3while(q <= p)//输出下部分{for(int i =1; i <=(p - q)/2; i ++)
cout <<' ';for(int i =1; i <= q;++ i )
cout << x;
cout << endl;
q +=2;}printf("%d", n -(number *2-1));return0;}