TLE#11#19#20求调
查看原帖
TLE#11#19#20求调
1045833
__SSY__楼主2025/7/25 10:39

评测记录

Code:

#include <bits/stdc++.h>
#define int long long
using namespace std;
const int N=1e5+10;
int lim,fg,ans;
int num[N],tot[N];
void dfs(int dep,int mol,int den,int pre){
    if(dep==lim+1){
        if(!mol){
            fg=1;
            if(num[lim]<tot[lim]){
                for(int i=1;i<=lim;i++)
                    tot[i]=num[i];
                ans=num[lim];
            }
        }
        return;
    }
    int x=(lim+1-dep);
    for(int l=max(pre+1,(den+mol-1)/mol);l<=den*x/mol;l++){
        num[dep]=l;
        dfs(dep+1,mol*l-den,den*l,l);
    }
}
signed main(){
    int a,b;
    scanf("%lld%lld",&a,&b);
    lim=1;
    while(!fg){
        memset(tot,0x3f,sizeof(tot));
        fg=0;
        dfs(1,a,b,1);
		lim++;
    }
    for(int i=1;i<lim;i++)
        printf("%lld ",tot[i]);
    return 0;
}
2025/7/25 10:39
加载中...