输入:第一行是一个不超过 100 的正整数 n,第二行是 n 个不超过 106 的正整数,表示每条绳子的长度,第三行是一个不超过 108 的正整数 m。
输出:绳段的最大长度,若无法切割,输出 Failed。
#include <iostream> using namespace std; int n, m, i, lbound, ubound, mid, count; int len[100]; // 绳子长度 int main( ) { cin >> n; count = 0; for (i = 0; i < n; i++) { cin >> len[i]; 1; } cin >> m; if (2) { cout << "Failed" << endl; return 0; } lbound = 1; ubound = 1000000; while (3) { mid = 4; count = 0; for (i = 0; i < n; i++) 5; if (count < m) ubound = mid - 1; else lbound = mid; } cout << lbound << endl; return 0; }