P2102 -- 正整数序列
时间限制:1000MS
内存限制:131072KB
Description
给定正整数 n,你的任务是用最少的操作次数把序列 1, 2, ..., n 中的所有数都变成 0。
每次操作可从序列中选择一个或多个整数,同时减去一个相同的正整数。比如,1,2,3 可以 把 2 和 3 同时减小 2,得到 1,0,1。
Input Format
仅一行,为正整数 n。
Output Format
对于每组数据,输出最少操作次数。
Sample Input
3
Sample Output
2
Hint
对于100%的数据,1<=n<=10^9
数据十分有梯度
【题解】Hint说的是,确实十分有梯度,就是一道水题啊。。
为了作死就用了用dfs简直爽= =竟然0s过了= =
TAT我才花了60s打完代码。
1 #include <bits/stdc++.h> 2 int dfs(int num) {if(num==1)return 1;return dfs(num/2)+1;} 3 int main() {int n;scanf("%d", &n);printf("%d ", dfs(n));}