hdu 2091 空心三角形

2021-07-11 10:12:17 字數 673 閱讀 4940

運用了上篇部落格(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 每個樣板三角形之間應空...