| 比赛 | 
    EYOI暨SBOI暑假快乐赛2nd | 
    评测结果 | 
    WWWWWWWWWW | 
    | 题目名称 | 
    幂次计算 | 
    最终得分 | 
    0 | 
    | 用户昵称 | 
     卐 | 
    运行时间 | 
    0.000 s  | 
    | 代码语言 | 
    C++ | 
    内存使用 | 
    0.00 MiB  | 
    | 提交时间 | 
    2022-06-26 10:50:38 | 
显示代码纯文本
#include <bits/stdc++.h>
using namespace std;
long long  lt=-1,N;
int ksm(long long n,long long sum)
{
    if(n==1)
    {
        if(lt==-1)lt=sum;
        else lt=min(sum,lt);
        return 0;
    }
    if(n/2*2==n)ksm(n/2,sum+1);
    if(n/2*2!=n)
    {
        ksm(n-1,sum+1);
        ksm(n+1,sum+1);
    }
    return 0;
}
int main()
{
    freopen("mico.in","r",stdin);
    freopen("mico.out","w",stdout);
    while(cin>>N&&N!=0)
    {
                       lt=-1;
        ksm(N,0);
        cout<<lt<<endl;
    }
    return 0;
}