ゆうたんの言うようにプログラムをする上で規則性を見つけるのは大事で、そうすることで楽が出来る感じになると思います。 (もしくはマップツールですね) 基本的に大きな木を表示するところだと思うので1本の大きな木をBGPUTで書き込む関数を作って、その時に重なり(前になにか描いてある)があったら、その前の絵とBGPUTする絵を合成した番号に変換する(この変換に関しては規則性があればみつけ、なければ変換テーブルなどで行う事になる)ようなプログラムを書いて利用するようにすれば出来るんじゃないかと思いますよ。 FORなどのループ処理は必須で、場合によっては配列など他の手段も併用するって感じになると思います。