返回题解分享
讨论 / 题解分享/ 帖子详情

测试次数(结果填空) - 题解

#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
const int N = 1e4 + 5;
int f[4][N];//f[i][j] 表示前i个手机 楼层有j层 所有测试方案的个数
int main()
{
    int n=1000;
    for (int i = 1; i <= 3; i ++ )
        for (int j = 0; j <= n; j ++ )f[i][j] = j; //从第1层到第j层 一层一层测试,最大测j次
    for (int i = 2; i <= 3; i ++ )
        for (int j = 1; j <= n; j ++ )
            for (int k = 1; k <= j; k ++ )
                f[i][j] = min(f[i][j], max(f[i-1][k-1], f[i][j-(k+1)+1])+1);
    printf("%d", f[3][n]);
    return 0;
}
0 回复 0 转发 1 喜欢 5 阅读
回复 (0)
默认 最新
暂无回复,快来抢沙发!