PAT乙级1027 打印沙漏

1、计算需要打印的行数
2、打印上半部
3、打印下半部

#include 

using namespace std;

int main(){
    int sum[200],num[200],s1=1,s2=0,count=0;
    int N;
    char c; 
    sum[count]=1;
    num[count]=1;
    cin>>N;
    cin>>c;
    while(sum[count]<=1000){
        count++;
        s1+=2;
        sum[count]=sum[count-1]+(s1*2);
        num[count]=s1;
    }
    while(!(N<sum[count+1]&&N>=sum[count])) count--;
    int k=0;
    for(int i=count;i>=0;i--,k++){
        for(int j=0;j' '; 
        }
        for(int j=0;j2;
    for(int i=1;i<=count;i++,k--){
        for(int j=0;j' '; 
        }
        for(int j=0;jsum[count];
    return 0;
}

你可能感兴趣的:(PAT,c++)