運用了上篇部落格(dp數塔)中提到的逆向思維,從底下往上依次向二維陣列(對於許多作圖題,二維陣列是個非常實用的自定義資料)中填入字元c,(當然,不逆向也可以,但是介於我要多多熟悉逆向思考,所以這裡就逆向了)。
#include
#include
#include
#define max 100
using namespace std;
char a[max][max];
int main() ;
for(int i=0; i}
(1).一開始我開了個45*45大小的陣列(資料),提交後就runtime error
(access_violation)
了,這個錯誤,一般原因就是陣列開小了,執行過程中超出了,找了找,原因就在於i<2*n-1,而n<42,乘個2肯定超啊,後來改為100就碰上了pe,這題目要求也是不太一樣,要第一例之後每一例輸入後輸出一空行,還好看了discuss。
(2).本題實現**(演算法):
for(int i=n-1;i>0;i--)
通過例子總結出a[i-1][n-i]=c;
a[i-1][i+n-2]=c;
a[i-1][i+n-1]=0;用來控制格式(每行末沒有空格)
(3).隨著做題數目的增加,愈發意識到那條程式設計的**定律:資料+演算法=程式
HDU 2091 空心三角形
problem description 把乙個字元三角形掏空,就能節省材料成本,減輕重量,但關鍵是為了追求另一種視覺效果。在設計的過程中,需要給出各種花紋的材料和大小尺寸的三角形樣板,通過電腦臨時做出來,以便看看效果。input 每行包含乙個字元和乙個整數n 0 output 每個樣板三角形之間應空...
HDU 2091 空心三角形
problem description 把乙個字元三角形掏空,就能節省材料成本,減輕重量,但關鍵是為了追求另一種視覺效果。在設計的過程中,需要給出各種花紋的材料和大小尺寸的三角形樣板,通過電腦臨時做出來,以便看看效果。input 每行包含乙個字元和乙個整數n 0 output 每個樣板三角形之間應空...
HDU 2091 空心三角形
problem description 把乙個字元三角形掏空,就能節省材料成本,減輕重量,但關鍵是為了追求另一種視覺效果。在設計的過程中,需要給出各種花紋的材料和大小尺寸的三角形樣板,通過電腦臨時做出來,以便看看效果。input 每行包含乙個字元和乙個整數n 0 output 每個樣板三角形之間應空...