比赛 2024暑假C班集训D 评测结果 AAAAAAAAAA
题目名称 鹰蛋 最终得分 100
用户昵称 健康铀 运行时间 2.696 s
代码语言 C++ 内存使用 11.22 MiB
提交时间 2024-07-13 10:14:54
显示代码纯文本
#include<bits/stdc++.h>
using namespace std;
int n,m,f[1010][1010],vis[1010][1010];
int dfs(int x,int y){
    if(vis[x][y]==1)
    return f[x][y];
    f[x][y]=10000000;
    int ans=0;
    for(int i=1;i<=x;i++){
        ans=max(dfs(i-1,y-1),dfs(x-i,y));
        f[x][y]=min(ans+1,f[x][y]);
    }
    vis[x][y]=1;
    return f[x][y];
}
int main(){
    freopen("eagleegg.in","r",stdin);
    freopen("eagleegg.out","w",stdout);
    ios::sync_with_stdio(false);
    cin.tie(0);cout.tie(0);
    for(int i=1;i<=1010;i++){
        f[0][i]=0;
        vis[0][i]=1;
    }
    for(int i=1;i<=1010;i++){
        f[i][1]=i;
        vis[i][1]=1;
    }
    while(cin>>m>>n){
        if(n==0&&m==0)
        break;
        cout<<dfs(n,m)<<endl;
    }
    return 0;
}