比较简单,具体思路看代码注释。
要注意的是输出的空行要求。经过多番尝试得知可行的空行方案为:除了第一个三角形,其他三角形都在上方空一行。评测时输出和输入的顺序没有关系。输出@时跳出while循环即可。
#include
using namespace std;
int main()
{
char str;
int n;
bool state = 0;//记录是不是第一个三角形,第一个三角形输出过后将此值改为1
while (cin >> str)
{
if (str == '@')break;
else
{
if(state==1)
cout << endl;
cin >> n;//输入行数
for (int i = 1; i <= n; i++)//循环行数次,i等于几就是第几行
{