蓝桥杯2017年第八届真题-分巧克力 - C语言网

做题记录:

第一次(16分钟/78')超时:

通过举例,可以直到长宽  a*b的巧克力,分边长为i的巧克力可以分(a/i)*(b/i)块

思路:map记录边长为i的有多少块,即输入时把a*b的巧克力的所有情况放在map中,最后遍历map,找map中大于等于k的最大i

map遍历

for(auto i=map.begin();i!=map.end();i++)
{
map->first;
map->second;
}

第二次:超时(78)

在遍历时当_map[i]>=k时更新最大值

第三次:看题解

思路:二分法

问题本质:

在1~N中搜索符合条件的边长i,且在i左边的边长都分的个是都大于等于k,在i右边的边长个数都小于k

二分算法_一名蒟蒻的博客-CSDN博客_什么是二分算法

#include<bits/stdc++.h>
using namespace std;
const int N=1e5+7;
int n,k;
int h[N],w[N];
bool check(int x)
{int res=0;for(int i=1;i<=n;i++){res+=(h[i]/x)*(w[i]/x);}return res>=k;
}
int main()
{cin>>n>>k;for(int i=1;i<=n;i++){cin>>h[i]>>w[i];}int l=1,r=N;while(l<r){int mid=l+r+1>>1;if(check(mid))l=mid;else r=mid-1;}cout<<l<<endl;return 0;} 

收获:

使用静态数组:const N=1e5+1(最大上限)

输入:cin>>a>>b

使用二分法搜索而不是暴力搜索

二分法模板

题目 1885: 2017 分巧克力相关推荐

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

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

  2. 2017蓝桥杯省赛---java---B---9(分巧克力)

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

  3. 2017蓝桥杯c语言C组承压计算,蓝桥杯2017Java B组---分巧克力and承压计算

    分巧克力 package lala; /* *儿童节那天有K位小朋友到小明家做客.小明拿出了珍藏的巧克力招待小朋友们. 小明一共有N块巧克力,其中第i块是Hi x Wi的方格组成的长方形. 为了公平起 ...

  4. 2017蓝桥杯之分巧克力

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

  5. 蓝桥杯第八届省赛JAVA真题----分巧克力

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

  6. 蓝桥杯 分巧克力 python

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

  7. C++实现 1227. 分巧克力

    C++实现 1227. 分巧克力   大家好,我叫亓官劼(qí guān jié ),在CSDN中记录学习的点滴历程,时光荏苒,未来可期,加油~博主目前仅在CSDN中写博客,唯一博客更新的地址为:亓官 ...

  8. Java实现第八届蓝桥杯分巧克力

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

  9. 分巧克力 【蓝桥杯】

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

最新文章

  1. 美多商城之购物车(购物车管理2)
  2. 26张图带你彻底搞懂volatile关键字
  3. 公布硕士论文最新进展一(2007.3.6)
  4. 生产环境提升rman备份速度----启动块跟踪
  5. markdown语法十步学习 图文并茂
  6. Linux 命令之 sudoedit -- 以另外一个用户身份编辑文件
  7. 网易考拉向欧洲市场投入220亿,能掀起多大波澜?
  8. 小菜编程成长记(十二 无熟人难办事?——聊设计模式迪米特法则)
  9. 医院网络安全管理方案
  10. 旅游网站设计参考文献优秀范例合集
  11. k8s 拉取镜像失败_k8s 无法拉取阿里云仓库镜像
  12. An中的共轭类的个数
  13. UITableView去掉Grouped样式的第一组Header组头
  14. ArcGIS基础:要素转点、要素折点转点与面转线
  15. iphone4s 关于大于400M的视频无法拷贝的问题
  16. 富文本编辑器 Kindeditor 的使用和 常见错误
  17. 一种下载Nvidia旧版本显卡驱动的方法(在知道版本号的前提下)
  18. MySQL学习(三) 数据类型约束、TCL语言、流程控制
  19. 10月28日 考研英语学习任务
  20. Android实现类淘宝多图评价

热门文章

  1. 平方取中法随机数函数
  2. HDU2501 Tiling_easy version【递推+打表】
  3. 二项式定理等价变换与简单推论
  4. 移位运算与除法、取模运算
  5. VS(Visual Studio)自动创建的文件格式
  6. C Tricks(十四)—— 余数
  7. 面向对象 —— 类设计(十)—— 成员函数
  8. 趣学 C 语言(五)—— 内存管理
  9. mingw w64 v8.0.0_R 4.0发布,配套编译工具Rtools 40发布
  10. python零基础能学吗-Python真的零基础可以学会吗?