經(jīng)典算法-半數(shù)集問題
半數(shù)集問題 «問題描述:
給定一個自然數(shù)n,由n開始可以依次產(chǎn)生半數(shù)集set(n)中的數(shù)如下。
(1) n∈set(n);
(2) 在n的左邊加上一個自然數(shù),但該自然數(shù)不能超過最近添加的數(shù)的一半;
(3) 按此規(guī)則進(jìn)行處理,直到不能再添加自然數(shù)為止。
例如,set(6)={6,16,26,126,36,136}。半數(shù)集set(6)中有6個元素。
«編程任務(wù):
對于給定的自然數(shù)n,編程計算半數(shù)集set(n)中的元素個數(shù)。
«數(shù)據(jù)輸入:
輸入數(shù)據(jù)由文件名為set*.in的文本文件提供。
每個文件只有1行,給出整數(shù)n。(0<n<1000)
«結(jié)果輸出: 程序運行結(jié)束時,將計算結(jié)果輸出到文件set*.out中。輸出文件只有1行,給出半數(shù)集set(n)中的元素個數(shù)。