leetcode 375. Guess Number Higher or Lower II

来源:互联网 发布:mysql配置参数详解 编辑:程序博客网 时间:2024/06/04 19:39
class Solution {public:    int getMoneyAmount(int n) {        const int tableSize = n;        int table[tableSize][tableSize];        for (int i = n - 1; i >= 0; i--) {            for (int j = i; j < n; j++) {                if (j == i + 1) {                    table[i][j] = i + 1;                } else if (i == j) {                    table[i][j] = 0;                } else {                    int k = i + 1, result = INT_MAX;                    while (k < j) {                        result = min(result, k + 1 + max(table[i][k - 1], table[k + 1][j]));                        k++;                    }                    table[i][j] = result;                }            }        }        return table[0][n - 1];    }};
建个表,table[i][j]表示从范围[i,j]的结果,最坏的情况是每次都被分到较差的分支,但是也要选所有可能得到分支的最好结果。
0 0
原创粉丝点击