比赛 2024暑假C班集训D 评测结果 AAAAAAAAAA
题目名称 鹰蛋 最终得分 100
用户昵称 健康铀 运行时间 2.696 s
代码语言 C++ 内存使用 11.22 MiB
提交时间 2024-07-13 10:14:54
显示代码纯文本
  1. #include<bits/stdc++.h>
  2. using namespace std;
  3. int n,m,f[1010][1010],vis[1010][1010];
  4. int dfs(int x,int y){
  5. if(vis[x][y]==1)
  6. return f[x][y];
  7. f[x][y]=10000000;
  8. int ans=0;
  9. for(int i=1;i<=x;i++){
  10. ans=max(dfs(i-1,y-1),dfs(x-i,y));
  11. f[x][y]=min(ans+1,f[x][y]);
  12. }
  13. vis[x][y]=1;
  14. return f[x][y];
  15. }
  16. int main(){
  17. freopen("eagleegg.in","r",stdin);
  18. freopen("eagleegg.out","w",stdout);
  19. ios::sync_with_stdio(false);
  20. cin.tie(0);cout.tie(0);
  21. for(int i=1;i<=1010;i++){
  22. f[0][i]=0;
  23. vis[0][i]=1;
  24. }
  25. for(int i=1;i<=1010;i++){
  26. f[i][1]=i;
  27. vis[i][1]=1;
  28. }
  29. while(cin>>m>>n){
  30. if(n==0&&m==0)
  31. break;
  32. cout<<dfs(n,m)<<endl;
  33. }
  34. return 0;
  35. }