洛谷 P5730 顯示屏

2021-10-22 21:59:05 字數 936 閱讀 1618

液晶屏上,每個阿拉伯數字都是可以顯示成 3×5 的點陣的(其中 x 表示亮點,. 表示暗點)。現在給出數字位數(不超過 100)和一串數字,要求輸出這些數字在顯示屏上的效果。數字的顯示方式如同樣例輸出,注意每個數字之間都有一列間隔。

這題歸納在陣列的類別中,但我感覺它更像是側重考查字串,畢竟用到了字串的一點小技巧。

我的做法很粗暴,打表,把所有情況都列舉出來(一般沒思路或者追求速度建議打表,不用想的)。

不知道為啥陣列b要定義成string型別,char不行(但是一般字串陣列要不是char a[100]要不是直接string a接for迴圈)。

我的做法相當於把圖案分割成5行,注意 += 的使用。

最後是去點操作(最後乙個 . )substr函式就是複製字串操作,substr(開始位置,複製多長)

#include

using

namespace std;

intmain()

if(a[i]

=='1')if

(a[i]

=='2')if

(a[i]

=='3')if

(a[i]

=='4')if

(a[i]

=='5')if

(a[i]

=='6')if

(a[i]

=='7')if

(a[i]

=='8')if

(a[i]

=='9')}

for(

int i=

1;i<=

5;i++

)//去點操作

return0;

}

P5730 深基5 例10 顯示屏

題目的意思很明確,要我們通過輸入的數字來構建乙個顯示屏,使得上面顯示這些數字。許多題解裡建立了乙個三維char陣列來儲存每乙個數字,然後進行輸出,其中打表浪費了大量的時間。我想,既然樣例輸出裡就有現成的 0 to 9 每乙個數字的形狀,為什麼不直接拿過來用呢?首先我建立了乙個陣列base 1來儲存樣...

洛谷P5049 洛谷P5022 題解 旅行

原題 資料加強版 加強版 參考你谷題解 終於調過了 又是一如既往的申必錯誤 noi plus石錘了 原題的資料允許我們 o n 2 暴力斷邊,但是加強版的資料達到了 n log n 級別,我們必須在斷邊這一環節尋求更好的解法。考慮我們進入環後在何處回溯 根據繼續走環走到的點分類 設當前已經從 b 走...

洛谷練習P2279 P1346

2020年,人類在火星上建立了乙個龐大的基地群,總共有n個基地。起初為了節約材料,人類只修建了n 1條道路來連線這些基地,並且每兩個基地都能夠通過道路到達,所以所有的基地形成了乙個巨大的樹狀結構。如果基地a到基地b至少要經過d條道路的話,我們稱基地a到基地b的距離為d。由於火星上非常乾燥,經常引發火...