杭电ACM 2091:空心三角形

原创作品 转载请注明出处http://blog.csdn.net/always2015/article/details/45771815

杭电ACM 2091:空心三角形_第1张图片

这一道题有点难度,主要注意将结果分三部分输出,还有就是每行的最后是没有空格的,还有就是最后的结果格式, 在代码中都有注释;我的AC代码如下:

#include 

using namespace std;

int main()
{
    char input_ch;
    int n,flag=0;
    while(cin>>input_ch&&input_ch!='@'&&cin>>n)
    {
        //注意下一个的输入与上一个的结果之间是没有空格的
        if(flag>0)cout</*将输出的部分分为三部分:第一部分就是第一行,因为第一个输出只有一个字符,
        接着就是从第二行开始到倒数第二行,这几行只有两个字符,最后就是最后一行输出全部字符*/
        if(n==1)
            cout<else
        {
            //第二行到倒数第二行
            for(int i=1; i<=n-1; i++)
            {
                for(int j=1; jif(j==n-i+1||j==n+i-1)
                        cout<else
                        cout<<" ";
                }
                cout<//最后一行
            for(int i=0; i<2*n-1; i++)
            {
                cout<cout<return 0;
}

结果图如下:
杭电ACM 2091:空心三角形_第2张图片

你可能感兴趣的:(【ACM刷题】)