題目描述:
我們要求找出具有下列性質數的個數(包含輸入的自然數n):
先輸入乙個自然數n(n≤1000),然後對此自然數按照如下方法進行處理:
1.不作任何處理;
2.在它的左邊加上乙個自然數,但該自然數不能超過原數的一半;
3.加上數後,繼續按此規則進行處理,直到不能再加自然數為止.
輸入:
6
輸出
6
個人思路:
基本思路是遞迴應該沒啥好說的。但是提交過程中有這樣的情況:
#include#include#include#includeusing namespace std;
long long ans = 0;
void judge(int k)
} else return;
}int main()
這樣暴力遍歷列舉的話大概500可以過,但是題目給了1000…所以前五個資料ac後面就全給t了。
ac**:
#include#include#include#includeusing namespace std;
long long ans = 0;
long long f[1005];
int main()
f[i] ++; //把自身也加上
} cout << f[n] << endl;
return 0;
}
洛谷P1028 數的計算
我們要求找出具有下列性質數的個數 包含輸入的自然數n 先輸入乙個自然數n n 1000 然後對此自然數按照如下方法進行處理 1.不作任何處理 2.在它的左邊加上乙個自然數,但該自然數不能超過原數的一半 3.加上數後,繼續按此規則進行處理,直到不能再加自然數為止.輸入格式 乙個自然數n n 1000 ...
洛谷 P1028 數的計算
我們要求找出具有下列性質數的個數 包含輸入的自然數n 先輸入乙個自然數n n 1000 然後對此自然數按照如下方法進行處理 不作任何處理 在它的左邊加上乙個自然數,但該自然數不能超過原數的一半 加上數後,繼續按此規則進行處理,直到不能再加自然數為止.輸入格式 乙個自然數n n 1000 輸出格式 乙...
洛谷P1028 數的計算
我們要求找出具有下列性質數的個數 包含輸入的自然數 n 先輸入乙個自然數n n 1000 然後對此自然數按照如下方法進行處理 不作任何處理 在它的左邊加上乙個自然數,但該自然數不能超過原數的一半 加上數後,繼續按此規則進行處理,直到不能再加自然數為止.輸入格式 1 個自然數n n 1000 輸出格式...