hdu 2091 輸出技巧 空心三角形

2021-07-04 08:07:51 字數 611 閱讀 7523

hdu 原題鏈結

**很多人可能不知道'*'在格式化輸入輸出中的作用。

在scanf()中,用%*#,就代表讀入乙個#的資料,但不處理。比如:

scanf("%c%*c%c", &a, &b);

輸入abc,此時,變數a='a', c='c'。而中間的'b',只是讀入,沒有做任何處理。

在printf()中,%*#用來設定場寬。

我們平時用%2d一類的轉義字元來代表輸出整形d時場寬為2個字元,但這種方法設定場寬只能是常數,不能在程式執行時其變化。

而用'*',就做到了可變場寬的作用。比如:

printf("%*d", 4, a);

表示輸出整形資料a,場寬為4個字元。

code:

#include int main( )

for (i = 1; i + 1 < n; i++)

printf("%*c%*c\n", n - i, c, i * 2, c);

for (i = 0; i < 2 * n - 1; i++)

putchar(c);

putchar('\n');

}return 0;

}

HDU 2091 空心三角形

problem description 把乙個字元三角形掏空,就能節省材料成本,減輕重量,但關鍵是為了追求另一種視覺效果。在設計的過程中,需要給出各種花紋的材料和大小尺寸的三角形樣板,通過電腦臨時做出來,以便看看效果。input 每行包含乙個字元和乙個整數n 0 output 每個樣板三角形之間應空...

HDU 2091 空心三角形

problem description 把乙個字元三角形掏空,就能節省材料成本,減輕重量,但關鍵是為了追求另一種視覺效果。在設計的過程中,需要給出各種花紋的材料和大小尺寸的三角形樣板,通過電腦臨時做出來,以便看看效果。input 每行包含乙個字元和乙個整數n 0 output 每個樣板三角形之間應空...

hdu 2091 空心三角形

運用了上篇部落格 dp數塔 中提到的逆向思維,從底下往上依次向二維陣列 對於許多作圖題,二維陣列是個非常實用的自定義資料 中填入字元c,當然,不逆向也可以,但是介於我要多多熟悉逆向思考,所以這裡就逆向了 include include include define max 100 using nam...