分巧克力

package lala;

/*

*儿童节那天有K位小朋友到小明家做客。小明拿出了珍藏的巧克力招待小朋友们。

小明一共有N块巧克力,其中第i块是Hi x Wi的方格组成的长方形。

为了公平起见,小明需要从这 N 块巧克力中切出K块巧克力分给小朋友们。切出的巧克力需要满足:

1. 形状是正方形,边长是整数

2. 大小相同

例如一块6x5的巧克力可以切出6块2x2的巧克力或者2块3x3的巧克力。

当然小朋友们都希望得到的巧克力尽可能大,你能帮小Hi计算出最大的边长是多少么?

输入

第一行包含两个整数N和K。(1 <= N, K <= 100000)

以下N行每行包含两个整数Hi和Wi。(1 <= Hi, Wi <= 100000)

输入保证每位小朋友至少能获得一块1x1的巧克力。

输出

输出切出的正方形巧克力最大可能的边长。

样例输入:

2 10

6 5

5 6

样例输出:

2

*/

import java.util.Scanner;

public class Main {

public static void main(String[] args) {

int n, k;

int[] h = new int[100000];

int[] w = new int[100000];

Scanner sc = new Scanner(System.in);

n = sc.nextInt();

k = sc.nextInt();

for (int i = 0; i < n; ++i) {

h[i] = sc.nextInt();

w[i] = sc.nextInt();

}

int r = 100001;

int l = 1;

int ans = 0;

while (l <= r) {

int mid = (l + r) / 2;

int cnt = 0;

for (int i = 0; i < n; ++i) {

cnt += (h[i] / mid) * (w[i] / mid);

}

if (cnt >= k) {

l = mid + 1;

ans = mid;

} else {

r = mid - 1;

}

}

System.out.println(ans);

}

}

测试了一下,运行超时。。。

承压计算

package lala;

/*

* X星球的高科技实验室中整齐地堆放着某批珍贵金属原料。

每块金属原料的外形、尺寸完全一致,但重量不同。

金属材料被严格地堆放成金字塔形。

{7 },

{5 ,8} ,

{7, 8,8 },

{9, 2, 7, 2},

{8, 1,4, 9, 1 },

{8, 1 ,8,8 ,4,1 },

{7, 9, 6 ,1, 4 ,5, 4},

{5, 6, 5, 5, 6, 9 ,5, 6},

{5,5, 4, 7, 9, 3, 5, 5,1 },

{7, 5 ,7, 9, 7, 4, 7, 3, 3,1},

{4, 6,4, 5, 5, 8 ,8, 3, 2, 4, 3},

{1 ,1 ,3 ,3 ,1 ,6 ,6 ,5, 5, 4, 4, 2},

{9 ,9 ,9 ,2 ,1 ,9 ,1 ,9 ,2 ,9 ,5 ,7 ,9},

{4 ,3 ,3 ,7, 7, 9, 3, 6, 1, 3, 8, 8, 3, 7},

{3 ,6 ,8 ,1 ,5 ,3 ,9 ,5 ,8 ,3 ,8 ,1 ,8 ,3 ,3},

{8 ,3 ,2 ,3, 3, 5, 5, 8, 5, 4, 2, 8 ,6 ,7 ,6, 9},

{8 ,1 ,8 ,1 ,8 ,4 ,6 ,2 ,2 ,1 ,7 ,9 ,4 ,2 ,3 ,3 ,4},

{2 ,8 ,4 ,2 ,2 ,9 ,9, 2, 8, 3, 4, 9, 6, 3, 9, 4, 6, 9},

{7 ,9 ,7 ,4 ,9 ,7 ,6 ,6 ,2 ,8 ,9 ,4 ,1 ,8 ,1 ,7 ,2 ,1 ,6},

{9, 2, 8, 6, 4, 2, 7, 9 ,5 ,4, 1, 2, 5, 1, 7, 3, 9, 8, 3, 3},

{5 ,2 ,1 ,6 ,7 ,9 ,3 ,2 ,8 ,9 ,5 ,5 ,6 ,6 ,6 ,2 ,1 ,8 ,7 ,9 ,9},

{6 ,7 ,1 ,8 ,8 ,7, 5, 3, 6, 5, 4, 7, 3, 4, 6, 7, 8, 1, 3, 2, 7, 4},

{2 ,2 ,6 ,3 ,5 ,3, 4 ,9 ,2 ,4 ,5 ,7 ,6 ,6 ,3 ,2 ,7 ,2 ,4 ,8 ,5 ,5 ,4},

{7 ,4 ,4 ,5 ,8, 3, 3, 8, 1, 8, 6, 3, 2, 1, 6, 2, 6, 4, 6, 3, 8, 2, 9, 6},

{1 ,2 ,4 ,1 ,3 ,3 ,5 ,3 ,4 ,9 ,6 ,3 ,8 ,6 ,5 ,9 ,1 ,5 ,3 ,2 ,6 ,8 ,8 ,5 ,3},

{2 ,2 ,7, 9, 3, 3, 2, 8, 6, 9, 8, 4, 4, 9, 5, 8, 2, 6, 3, 4, 8, 4, 9, 3, 8, 8},

{7 ,7 ,7 ,9 ,7 ,5 ,2 ,7 ,9 ,2 ,5 ,1 ,9 ,2 ,6 ,5, 3 ,9 ,3 ,5 ,7 ,3 ,5 ,4 ,2 ,8 ,9,},

{7 ,7, 6, 6 ,8 ,7 ,5 ,5 ,8, 2, 4, 7, 7, 4, 7, 2, 6, 9, 2, 1, 8, 2, 9, 8, 5, 7, 3, 6} ,

{5 ,9 ,4 ,5 ,5 ,7 ,5 ,5 ,6 ,3 ,5 ,3 ,9 ,5 ,8 ,9 ,5 ,4 ,1 ,2 ,6 ,1 ,4 ,3 ,5 ,3 ,2 ,4 ,1}

x   x   x  x  x  x  x  x  x  x   x   x  x  x  x  x  x  x  x  x  x  x   x   x  x  x  x  x   x   x

其中的数字代表金属块的重量(计量单位较大)。

最下一层的X代表30台极高精度的电子秤。

假设每块原料的重量都十分精确地平均落在下方的两个金属块上,

最后,所有的金属块的重量都严格精确地平分落在最底层的电子秤上。

电子秤的计量单位很小,所以显示的数字很大。

工作人员发现,其中读数最小的电子秤的示数为:2086458231

请你推算出:读数最大的电子秤的示数为多少?

注意:需要提交的是一个整数,不要填写任何多余的内容。

*/

import java.util.Arrays;

import java.util.Scanner;

public class 承压计算 {

static long[][] arr = new long[30][30];

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

long factor = 1;//2的30次方

for (int i = 0; i < 30; ++i) {

factor <<= i;

}

//输入数据放入二维数组

for (int i = 0; i < 29; ++i) {

for (int j = 0; j <= i; ++j) {

long a = sc.nextLong();

arr[i][j] = a * factor;// 每个数据都乘以factor

}

}

//自上而下处理a[i][j]*factor(2的30次方)-->除以2,计入a[i+1][j]和a[i+1][j+1]

//循环处理第1~N-1行

for (int i = 0; i < 29; ++i) {

for (int j = 0; j <= i; ++j) {

long ha = arr[i][j]/2;

arr[i+1][j] += ha;

arr[i+1][j+1] += ha;

}

}

//对a[N-1]这一行进行排序,查看最小值和factor之间的倍数关系,决定最大值是多少

Arrays.sort(arr[29]);

System.out.println(arr[29][0]);

System.out.println(arr[29][29]);

System.out.println(arr[29][29]/(arr[29][0])/2086458231);

}

}

2017蓝桥杯c语言C组承压计算,蓝桥杯2017Java B组---分巧克力and承压计算相关推荐

  1. 第十届蓝桥杯c语言试题,第十届蓝桥杯真题编程题1-7解析(高级组).pdf

    scratch 少儿编程第十届蓝桥杯真题 7 大家好 ~今天我们来讲解 scratch 蓝桥杯第十届编程大题的第七道题. 同样,这道题也是非常有难度的一道题.一起来看一下吧 解析: 女孩的程序 1.在 ...

  2. 蓝桥杯c语言试题寒假作业,2016蓝桥杯省赛C/C++A组第六题 寒假作业(示例代码)

    题意:现在小学的数学题目也不是那么好玩的. 看看这个寒假作业: □ + □ = □ □ - □ = □ □ × □ = □ □ ÷ □ = □ 每个方块代表1~13中的某一个数字,但不能重复. 比如: ...

  3. c语言程序设计分巧克力,[蓝桥杯训练] 第八届(2017)省赛 C/C++ A组 T09 - 分巧克力...

    1. 题目 标题: 分巧克力 儿童节那天有K位小朋友到小明家做客.小明拿出了珍藏的巧克力招待小朋友们. 小明一共有N块巧克力,其中第i块是Hi x Wi的方格组成的长方形. 为了公平起见,小明需要从这 ...

  4. 2017年蓝桥杯C语言组大学B组 C/C++题解

    1.标题: 购物单(还是程序的力量比较伟大--) 小明刚刚找到工作,老板人很好,只是老板夫人很爱购物.老板忙的时候经常让小明帮忙到商场代为购物.小明很厌烦,但又不好推辞. 这不,XX大促销又来了!老板 ...

  5. 蓝桥杯7届c语言 c组答案,第七届蓝桥杯C语言C组-(自己懂的题目)

    第七届蓝桥杯C语言C组-(自己懂的题目) 表示刚刚查了成绩,省赛一等奖,有资格去北京了,然后写一下总结, 先来写一下我懂的题目,毕竟我也是菜鸟,听说国赛比预赛难几个等级... 第一题 报纸页数 X星球 ...

  6. 数组三元数c语言程序,递增三元数组——第九届蓝桥杯C语言B组(省赛)第六题...

    原创 标题:递增三元组 给定三个整数数组 A = [A1, A2, ... AN], B = [B1, B2, ... BN], C = [C1, C2, ... CN], 请你统计有多少个三元组(i ...

  7. 标题 错误票据c语言,内含答案的 -- 2013蓝桥杯C语言本科组B.doc

    内含答案的 -- 2013蓝桥杯C语言本科组B.doc 下载提示(请认真阅读)1.请仔细阅读文档,确保文档完整性,对于不预览.不比对内容而直接下载带来的问题本站不予受理. 2.下载的文档,不会出现我们 ...

  8. 第七届蓝桥杯C语言C组-(自己懂的题目)

    第七届蓝桥杯C语言C组-(自己懂的题目) 表示刚刚查了成绩,省赛一等奖,有资格去北京了,然后写一下总结, 先来写一下我懂的题目,毕竟我也是菜鸟,听说国赛比预赛难几个等级... 第一题 报纸页数 X星球 ...

  9. 2021年 第12届 蓝桥杯【备赛直播公开课 —— 软件类(本科组、高职高专组)】

    蓝桥杯 Java B组 省赛决赛 真题详解及小结汇总[2013年(第4届)~2021年(第12届)] 第11届 蓝桥杯-第1.2次模拟(软件类)真题-(2020年3月.4月)-官方讲解视频 说明:部分 ...

最新文章

  1. 这本1900页的机器学习数学全书火了!完整版开放下载
  2. 深度丨三份研究报告,聚焦 AI 的三大主要话题
  3. 图说数据中心空调系统原理和架构
  4. 什么叫冷备用状态_新密5P加工中心冷油机生产厂家电话【瀚信德】
  5. python scikit_如何将Scikit学习Python库用于数据科学项目
  6. 工程师,你的钱究竟从哪来?
  7. TensorFlow从入门到理解(六):可视化梯度下降
  8. javaScript 面向对象与原型
  9. python怎么做一个动态烟花_简单烟花效果.py python firework demo
  10. 关于XML 编辑工具
  11. linuxdeployqt ldd ERROR: ldd outputLine: .../libQt5Core.so.5: version `Qt_5' not found (required by
  12. Winform实现微信功能
  13. spy++是可以获取浏览器当前页面的标题的,并且可以根据“窗口标题”和“类名”实现对浏览器的显示和隐藏,
  14. 有两个空酒桶,分别能舀3斤和7斤酒,还有1个装满了10斤的酒桶,我要卖5斤酒给剑客,这该如何是好?
  15. 通用爬取文章及图片导出到Word主程序代码
  16. 空间直线的最小二乘拟合
  17. 通孔的作用是什么linux,转载:PCB名詞解釋:通孔、盲孔、埋孔
  18. 余弦相似度:通过计算两个向量的夹角余弦值来评估他们的相似度
  19. Python 下opencv 应用: 摄像头参数设置
  20. HTML5期末大作业:基于html企业官网项目的设计与实现【艺术官网】

热门文章

  1. [css] body{height:100%}和html,body{height:100%}有什么区别?为什么html要设置height:100%呢,html不就是整个窗口吗?
  2. 前端学习(2423):补充markdown语法补充
  3. 前端学习(2404):表单验证总结
  4. 前端学习(2338):记录解决问题的一次
  5. “约见”面试官系列之常见面试题第二十五篇之对vue-router的理解(建议收藏)
  6. 前端学习(1690):前端系列javascript之知识体系1
  7. 前端学习(872):注册事件兼容性处理
  8. java学习(124):小综合案例
  9. java学习(48):带参带返回
  10. FreeRTOS 任务间同步和通信方法