PTA新手刷题系列--打印沙漏

PTA新手刷题系列--打印沙漏_第1张图片

符号个数 最外层符号
1 1
7 3
17 5
31 7
49 9
Created with Raphaël 2.1.2 开始 n<7? 输出一个符号,剩余n-1个 sum=1,i=1 sum+=(2*i+1)*2 sum>n? i--,然后此时2*i+1就是最外层的符号个数 结束 i++ yes no yes no
#include
using namespace std;
int main()
{
    int n,i;
    char symbol;
    cin>>n>>symbol;
    i=1;
    if(n<7){
        cout<cout<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<cout<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<cout<cout<return 0;
}

你可能感兴趣的:(PTA刷题)