全文预览

noip二十三届全国青少年信息学奥赛初赛试题及答案c

上传者:学习一点 |  格式:docx  |  页数:10 |  大小:155KB

文档介绍
       (4)         ;Р}ﻫcout <<          (5)         〈< endl;ﻫreturn 0;ﻫ}Р2.(切割绳子)有 n 条绳子,每条绳子的长度已知且均为正整数。绳子可以以任意正整数长度切割,但不可以连接.现在要从这些绳子中切割出 m 条长度相同的绳段,求绳段的最大长度是多少。(第一、二空 2.5 分,其余 3 分)Р输入:第一行是一个不超过 100 的正整数 n,第二行是 n 个不超过106的正整数,表示每条绳子的长度,第三行是一个不超过108的正整数 m。Р输出:绳段的最大长度,若无法切割,输出 Failed.РР#include 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;ﻫ}РРРﻫ

收藏

分享

举报
下载此文档