我是真来求助的,大佬救命
查看原帖
我是真来求助的,大佬救命
1588333
psyche_xin楼主2024/12/3 17:52
#include <stdio.h>
#include <stdlib.h>
int judge(int*F)
{

    if(*F==0||*F==1)return;
    else{*F=0;F++;(*F)+=1;judge(*F);return;}
}
int A(int*a,int p)
{
    (*a)++;
    if(*a>p){*a=0;a++;(*a)++;p*=2;A(*a,p);}
}
int COUNT(int *F,long int count)
{
    
    for(int i=0;i<60;i++)
    {
        if(*F==1)count++;
        F++;
    }
    return count;
}
int main()
{
    long int n;scanf("%ld",&n);
    int F[60]={0};
    int a[60]={0};
    long int count=0;
    for(long int i=0;i<n;i++)
    {
        A(*a,1);
        F[0]++;judge(*F);
        count+=COUNT(*F,count);
    }
    printf("%ld",count);
}


2024/12/3 17:52
加载中...