PTA Basic Level 1027 列印沙漏

2022-06-14 18:48:10 字數 955 閱讀 3496

本題要求你寫個程式把給定的符號列印成沙漏的形狀。例如給定17個「*」,要求按下列格式列印

*****

**** ***

*****

所謂「沙漏形狀」,是指每行輸出奇數個符號;各行符號中心對齊;相鄰兩行符號數差2;符號數先從大到小順序遞減到1,再從小到大順序遞增;首尾符號數相等。

給定任意n個符號,不一定能正好組成乙個沙漏。要求列印出的沙漏能用掉盡可能多的符號。

輸入格式:

輸入在一行給出1個正整數n(≤1000)和乙個符號,中間以空格分隔。

輸出格式:

首先列印出由給定符號組成的最大的沙漏形狀,最後在一行中輸出剩下沒用掉的符號數。

輸入樣例:

19 *
輸出樣例:
*****

**** ***

*****

2

思路

**

#includeusing namespace std;

int get_height(int x)

}int main()

int height = get_height(all);

int longest_star = 2*height + 1;

for(int i=1;i<=height;i++)

longest_star = 2*height + 1;

for(int i=1;i<=(longest_star-1)/2;i++) cout << " ";

cout << ch << endl;

longest_star = 3;

for(int i=height;i>=1;i--)

cout << all - (2*height*height + 4*height + 1);

return 0;

}

引用

PTA Basic Level 1048 數字加密

本題要求實現一種數字加密方法。首先固定乙個加密用正整數 a,對任一正整數 b,將其每 1 位數字與 a 的對應位置上的數字進行以下運算 對奇數字,對應位的數字相加後對 13 取餘 這裡用 j 代表 10 q 代表 11 k 代表 12 對偶數字,用 b 的數字減去 a 的數字,若結果為負數,則再加 ...

來自PTA Basic Level的三隻小野獸

最近利用閒暇時間做了一下 pta basic level 裡的題,裡面現在一共有 95 道題,這些題大部分很基礎,對於刷倦了 leetcode 的小夥伴可以去裡面愉快的玩耍哦。請聽題 題目描述 給定乙個英語句子,各個單詞之間用空格分隔。要求你編寫程式,將句中所有單詞的順序顛倒輸出。輸入示例 hell...

PTA Basic Level 1028 人口普查

某城鎮進行人口普查,得到了全體居民的生日。現請你寫個程式,找出鎮上最年長和最年輕的人。這裡確保每個輸入的日期都是合法的,但不一定是合理的 假設已知鎮上沒有超過 200 歲的老人,而今天是 2014 年 9 月 6 日,所以超過 200 歲的生日和未出生的生日都是不合理的,應該被過濾掉。輸入格式 輸入...