牛牛的數值變換

2021-08-02 12:13:50 字數 1066 閱讀 4120

沉寂了近乎一月,這段時間有學校的事,也有私人的事,原計畫每天寫一篇部落格的遠大理想這段時間被擱置了,好在現在有時間能重新拾起了。話不多說,進入正題!

昨晚乙個好哥們(西電軟工的大神)發了一則數值變換小題。

原題如下:

牛牛想對乙個數做若干次變換,直到這個數隻剩下一位數字。變換的規則是:將這個數變成 所有位數上的數字的乘積。比如285經過一次變換後轉化成2 * 8 * 5 = 80。 問題是,要做多少次變換,使得這個數變成個位數。

輸入描述 :

輸入乙個整數。小於等於2, 000, 000, 000。

輸出描述 :

輸出乙個整數,表示變換次數。

輸入例子 : 285     輸出例子 : 2

我覺得挺有意思的,就寫了下**。

#include<1218.h>

int main()

a = z;

x = z;

z = 1;

} printf("變換次數為:%d \n", y);

system("pause");

return 0;

}

這是我的**,絲毫未改。很渣,不是嗎?      

(說明一下,標頭檔案的1218.h 是個人建立的標頭檔案)

以下是哥們的**:

#includeint main()

count++;

m = n;

n = 1;

} printf("%d", count);

return 0;

}

沒有對比就沒有傷害。。。

我感覺自己受到了一萬點暴擊。。。

我的變數定義了6個,是哥們的2倍。。。

這個題很簡單,牛牛的問題很容易的到解決。。。

但是我的問題卻是不容易處理。

不過,**的正

確性、健壯性、可靠性、效率、易用性、可讀性(可理解性)、可擴充套件性、 可復用性、相容性

等等,一直是難題,想寫出完美的**,不是容易之事。這需要不斷的練習,優化。

我在成長,我在學習。

總結:路漫漫其修遠兮,吾將上下而求索!

牛牛的木板 牛牛的字元反轉

原題鏈結 題意 一段長n的序列,由0 1組成。可把m個0改1,求序列中最大連續1的個數。思路 尺取法 雙指標法 設定一對指標l,r。最開始都指向第乙個元素。l,r是區間左右端點,r指標先不斷往右遍歷,當區間內0的個數超過m時,l指標向右遍歷,要跳過乙個0,維持乙個區間內改了m個0的狀態 其間不斷用區...

迷路的牛牛

牛牛去犇犇老師家補課,出門的時候面向北方,但是現在他迷路了。雖然他手裡有一張地圖,但是他需要知道自己面向哪個方向,請你幫幫他。輸入描述 每個輸入包含乙個測試用例。每個測試用例的第一行包含乙個正整數,表示轉方向的次數n n 1000 接下來的一行包含乙個長度為n的字串,由l和r組成,l表示向左轉,r表...

牛牛的鬧鐘

牛牛總是睡過頭,所以他定了很多鬧鐘,只有在鬧鐘響的時候他才會醒過來並且決定起不起床。從他起床算起他需要x分鐘到達教室,上課時間為當天的a時b分,請問他最晚可以什麼時間起床 輸入描述 每個輸入包含乙個測試用例。每個測試用例的第一行包含乙個正整數,表示鬧鐘的數量n n 100 接下來的n行每行包含兩個整...