PAT B1027 列印沙漏(20)

2022-09-14 06:30:12 字數 883 閱讀 6917

思路:

使用陣列儲存每一行沙漏的最大符號數

輸入乙個正整數和乙個符號

遍歷陣列,找到大於正整數的陣列下標 j。

三角形底邊的字元數為 (j - 1) * 2 - 1

列印沙漏

列印剩餘字元:x - n[j - 1]

ac**

#include const int max_n = 200;

int n[max_n] = ;

int i = 3;

void init()

}int main()

// printf("*********%d*************\n", i);

int j = 1;

while(n[j] <= x)

int bottom = (j - 1)*2-1; //三角形底邊的字元數

//int space = (bottom+1)*(bottom-1)/2-1;

// printf("%d\n", small);

//列印沙漏

//倒三角

// printf("bottom: %d\n", bottom);

for(int i = bottom; i >= 1; i-=2)

for(int j = 0; j < i; j++)

printf("\n");

}//正三角

for(int i = 3; i <= bottom; i+=2)

for(int j = 0; j < i; j++)

printf("\n");

}printf("%d\n", x - n[j-1]);

return 0;

}

PAT B1027 列印沙漏 20

題目要求 本題要求你寫個程式把給定的符號列印成沙漏的形狀。例如給定17個 要求按下列格式列印 所謂 沙漏形狀 是指每行輸出奇數個符號 各行符號中心對齊 相鄰兩行符號數差2 符號數先從大到小順序遞減到1,再從小到大順序遞增 首尾符號數相等。給定任意n個符號,不一定能正好組成乙個沙漏。要求列印出的沙漏能...

PAT B1027 列印沙漏

題目描述 本題要求你寫個程式把給定的符號列印成沙漏的形狀。例如給定17個 要求按下列格式列印 所謂 沙漏形狀 是指每行輸出奇數個符號 各行符號中心對齊 相鄰兩行符號數差2 符號數先從大到小順序遞減到1,再從小到大順序遞增 首尾符號數相等。給定任意n個符號,不一定能正好組成乙個沙漏。要求列印出的沙漏能...

PAT B1027列印沙漏

傳送門 本題要求你寫個程式把給定的符號列印成沙漏的形狀。例如給定17個 要求按下列格式列印 所謂 沙漏形狀 是指每行輸出奇數個符號 各行符號中心對齊 相鄰兩行符號數差2 符號數先從大到小順序遞減到1,再從小到大順序遞增 首尾符號數相等。給定任意n個符號,不一定能正好組成乙個沙漏。要求列印出的沙漏能用...