1.11编程基础之二分查找.docx

01:查找最接近的元素 描述 在一个非降序列中,查找与给定值最接近的元素 输入 第一行包含一个整数 n,为非降序列长度。1 = n = 100000b 第二行包含n个整数,为非降序列各元素。所有元素的大小均在 0-1,000,000,000 之间。 第三行包含一个整数 m,为要询问的给定值个数。1 = m = 10000。 接下来m行,每行一个整数,为要询问最接近元素的给定值。所有给定值的 大小均在0-1,000,000,000之间。 输出 m行,每行一个整数,为最接近相应给定值的元素值,保持输入顺序。若有 多个值满足条件,输出最小的一个。 样例输入 3 5 8 2 10 5 样例输出 02:二分法求函数的零点 查看 提交 统计 提问 总时间限制: 1000ms 内存限制: 65536kB 描述 有函数: f(x) = x5- 15 * x4+ 85 * x3- 225 * x2+ 274 * x - 121 已知f 0 , f 0且方程f(x) = 0在区间[,]有且只有一个根,请用二分法求出 该根。 输入 无。 输出 该方程在区间[,]中的根。要求四舍五入到小数点后 6位。 样例输入 无 样例输出 不提供 03:切分矩形组 查看 提交 统计 提问 总时间限制: 1000ms 内存限制: 65536kB 描述 给定若干个平行于坐标轴的互不重叠的矩形, 矩形的顶点都是整点。要求画一 根平行于y轴的直线x=k( k是整数),使得这些矩形落在直线两边面积之差 最小。 注意:若直线穿过一个矩形,将会把它切成两个部分,分属左右两侧。 输入 第一行是整数 n,表示有n个矩形(0 n = 10000)。 接下来是n行,每行表示一个矩形。每行有 4个整数left,top,w,h分别代表矩 形左上角横坐标,矩形左上角纵坐标,矩形宽度,矩形高度。 0 = left,top = 1000000, 0 = w,h = 100000。 输出 输出使得直线x= k两边所包含的矩形面积差最小的 k。如果有多条直线满足 要求,输出最小的k。 样例输入 2 1 1 100 100 1000 1 100 100 样例输出 04:网线主管 描述 仙境的居民们决定举办一场程序设计区域赛。 裁判委员会完全由自愿组成, 他 们承诺要组织一次史上最公正的比赛。 他们决定将选手的电脑用星形拓扑结构 连接在一起,即将它们全部连到一个单一的中心服务器。 为了组织这个完全公 正的比赛,裁判委员会主席提出要将所有选手的电脑等距离地围绕在服务器周 围放置。 为购买网线,裁判委员会联系了当地的一个网络解决方案提供商, 要求能够提 供一定数量的等长网线。 裁判委员会希望网线越长越好, 这样选手们之间的距 离可以尽可能远一些。 该公司的网线主管承接了这个任务。 他知道库存中每条网线的长度 (精确到厘 米),并且只要告诉他所需的网线长度(精确到厘米),他都能够完成对网线 的切割工作。但是,这次,所需的网线长度并不知道, 这让网线主管不知所措。 你需要编写一个程序,帮助网线主管确定一个最长的网线长度, 并且按此长度 对库存中的网线进行切割,能够得到指定数量的网线。 输入 第一行包含两个整数 N和K,以单个空格隔开。N ( 1 = N = 10000是库存 中的网线数,K( 1 = K = 10000是需要的网线数量。 接下来N行,每行一个数,为库存中每条网线的长度(单位:米)。所有网 线的长度至少1m,至多100km。输入中的所有长度都精确到厘米,即保留到 小数点后两位。 输出 网线主管能够从库存的网线中切出指定数量的网线的最长长度(单位:米)。 必须精确到厘米,即保留到小数点后两位。 若无法得到长度至少为 1cm的指定数量的网线,则必须输出“(不包含引号)。 样例输入 4 11 来源 Northeastern Europe 2001 05:派 描述 我的生日要到了!根据习俗,我需要将一些派分给大家。我有 N个不同口味、 不同大小的派。有F个朋友会来参加我的派对,每个人会拿到一块派(必须一 个派的一块,不能由几个派的小块拼成;可以是一整个派)。 我的朋友们都特别小气,如果有人拿到更大的一块,就会开始抱怨。因此所有 人拿到的派是同样大小的 (但不需要是同样形状的),虽然这样有些派会被浪 费,但总比搞砸整个派对好。当然, 我也要给自己留一块,而这一块也要和其 他人的同样大小。 请问我们每个人拿到的派最大是多少每个派都是一个高为 1,半径不等的圆柱 体。 输入 第一行包含两个正整数 N和F, 1 N, F 10(表示派的数量和朋友的数量 第二行包含N个1到10000之间的整数,表示每个派的半径。 输出 输出每个人能得到的最大的派的体积,精确到小数点后三位。 样例输入 3 3 3 06:月

文档评论(0)

1亿VIP精品文档

相关文档