蛋糕

题目描述:
今天是Bessie的生日,他买了一个蛋糕和朋友们一起分享,蛋糕可以看成是一个R行C列的表格,共有R*C个格子,每个格子都有一个0至9的数字,表示该格子蛋糕拥有的巧克力。现在Bessie要把蛋糕横的切3刀再竖的切3刀,由于Bessie刀法厉害,所以每个格子蛋糕都是完整的,显然蛋糕会被切成16份,然后Bessie和他的15个朋友们每人拿一份,Bessie比较客气,总是等其他朋友拿完了,Bessie拿最后剩下的那一份。Bessie的朋友们都很不客气,都是挑最多巧克力的那份去拿,于是Bessie最后拿到手的那份蛋糕总是巧克力总和最少的。Bessie心想:既然自己总是最后拿蛋糕,那应该怎么切蛋糕,才能使得自己拿的那部分蛋糕的有尽量多的巧克力呢?这个问题自然是你的任务了。

输入:
第一行,个两整数R,C。
接下来有R行,每行有C个整数,每个整数范围是0至9。

输出:
一个整数,表示Bessie最后拿到的蛋糕最多可以有多少巧克力。

这道题考虑到R和C都不大,所以就考虑暴力。
很显然二分答案然后用O(R4)O(R^4)O(R4)的时间判断。
这过不了啊。。。其实过的了,只是这个时间复杂度算错了。
里面有个三是C3C3C3。

直接上代码,没什么好说的。

#include <cstdio>
#include <cstring>
using namespace std;const int N = 80;inline void read(int &x)
{char ch = getchar();for(;ch < '0' || ch > '9';) ch = getchar();for(;ch >= '0' && ch <= '9';) x = x * 10 + (ch ^ '0'), ch = getchar();
}char s[N];
int n,m,a[N][N],sum,l,r,mid,ans;bool check(int mid)
{for(int i = 2;i <= m; ++ i)for(int j = i + 1;j <= m; ++ j)for(int k = j + 1;k <= m; ++ k){int sum1 = 0,sum2 = 0,sum3 = 0,sum4 = 0,cnt = 0;for(int o = 1;o <= n; ++ o){sum1 += a[o][i - 1],sum2 += a[o][j - 1] - a[o][i - 1],sum3 += a[o][k - 1] - a[o][j - 1],sum4 += a[o][m] - a[o][k - 1];if(sum1 >= mid && sum2 >= mid && sum3 >= mid && sum4 >= mid)cnt ++, sum1 = sum2 = sum3 = sum4 = 0;if(cnt > 3) break;}if(cnt > 3) return 1;}return 0;
}int main()
{read(n), read(m);for(int i = 1;i <= n; ++ i){scanf("%s",s + 1);for(int j = 1;j <= m; ++ j) a[i][j] = (s[j] ^ '0') + a[i][j - 1], sum += a[i][j];}l = 0, r = sum / 16;for(;l <= r;) check(mid = l + r >> 1) ? (l = mid + 1, ans = mid,1) : r = mid - 1;printf("%d\n",ans);return 0;
}

千万别学我。。。这个方法很劣的。

JZOJ3918 蛋糕相关推荐

  1. Java项目:在线蛋糕商城系统(java+jsp+jdbc+mysql)

    源码获取:博客首页 "资源" 里下载! 一.项目简述 功能: 主页显示热销商品:所有蛋糕商品展示,可进行商品搜 索:点击商品进入商品详情页,具有立即购买和加入购物 车功能,可增减购 ...

  2. NOIP模拟 蛋糕(DP+Dilworth定理)

    QAQ [题目分析] 谁能告诉我为什么我的网络流炸了吗........(我相信是SPJ的锅这年头暴力不好打啊) 所以我们按x排序,然后就是要找到序列中严格上升序列的最少个数,然后....duang.. ...

  3. 【c语言】蓝桥杯算法提高 填充蛋糕

    问题描述 编程计算涂满高为2,半径为r的圆形蛋糕表面,需要多少表面积的奶油(只要涂上表面和侧面) 读入一个数r,输出需要奶油的表面积,结果保留一位小数 样例输入 5.0 样例输出 141.4 #inc ...

  4. 图解自监督学习,人工智能蛋糕中最大的一块

    作者:Amit Chaudhary 编译:ronghuaiyang (AI公园) 原文链接: 图解自监督学习,人工智能蛋糕中最大的一块​mp.weixin.qq.com 如果人工智能是一块蛋糕,那么蛋 ...

  5. 【玩转电饭煲】不用烤箱,电饭煲也能做出美的蛋糕

    电饭煲只能用来做米饭?煮粥?当然不是,只要尝试,你会发现更多惊喜. 我家的厨房,可谓是麻雀的小五脏,虽然不大,但是东西还是很全的.烤箱是有的,但总懒的去用,每次都懒的清洁.后来发现用电饭煲也能做出松软 ...

  6. SOA:惠普也要分块蛋糕

    据了解,惠普斥资45亿美元收购美科利(Mercury Interactive Corp.)后,已经成为全球第6大软件公司.知名调研机构近日刚刚发布的资料表明,2005年,惠普在全球分布式系统管理软件市 ...

  7. 吹灭蛋糕上蜡烛的节能小车

    简 介: 今天早上看到了参加全国大学生智能车同学在B站发布了 人类早期驯化节能信标车的珍贵影像资料4(第16届全国大学生智能车竞赛备赛) ,演示了他们车模是如何从懵懵懂懂,被他们成功驯化成聪明伶俐的吹 ...

  8. 题目1551:切蛋糕

    题目描述: 有如下图半价为R的圆形蛋糕,被切一刀后(图中红色直线),分成两个部分(黄色和绿色),已知其比例为r,求刀痕长度(图中红色直线). 输入: 输入包括多组测试数据,包括一个整数R(1<= ...

  9. flash动画制作成品_Flash制作点燃蛋糕蜡烛的互动动画

    关于蜡烛已经讲了火焰的制作方法,这里再讲一下如何制作点燃蛋糕蜡烛的互动小动画. Flash如何制作蜡烛火焰动画​mp.weixin.qq.com Flash如何制作打火机点蜡烛的效果(AS3)​mp. ...

最新文章

  1. 青少年编程竞赛交流群周报(第036周)
  2. [java语言]——InetAddress类的getByName()方法
  3. Spring使用Quartz配置调度事务
  4. Java 文件操作一(写文件、按行读文件、删除文件、复制文件、追加数据、创建临时文件、修改最后修改日期、获取文件大小)
  5. Mysql索引成本计算规则 Optimizer Trace
  6. Maven学习总结(38)——Maven下载失败文件夹批量删除问题的两种解决方法
  7. python函数-返回菲波那切数列for,range,append
  8. JavaScript学习(八十六)—运算符知识点总结
  9. win11非uefi启动如何安装 Windows11非uefi启动安装的步骤方法
  10. [NOIp模拟题] test
  11. Android编译判定BoardConfig.mk的宏控是否打开或者有效的验证方法
  12. php 环境搭建 -- 命令配置
  13. 【软件使用】Macbook M1 QuickTime录屏讲解(只录电脑或者同时录电脑和麦克风人声)
  14. IC之无毛刺时钟切换
  15. windows无法连接到打印机,错误为0x0000000b,无效句柄,解决办法。
  16. Plonky msm的改进版Yao算法
  17. 重装window系统总结
  18. 汉字与拼音互转的工具类
  19. c语言题模板大全,考试c语言题库
  20. 计算机组装试卷分析,高中英语试卷分析

热门文章

  1. 安卓框架,分析项目中surfaceFlinger出现的bug ---queueBuffer: BufferQueue has been abandoned
  2. 单片机数字定时闹钟设计c语言,电子设计 基于51单片机的定时闹钟设计.doc
  3. 黑马头条移动项目(一):项目介绍、项目技术点介绍、项目包介绍
  4. 隐私计算头条周刊(11.27-12.3)
  5. Gartner:2021年区块链三大顶级趋势
  6. 悟空分词与mysql结合_悟空分词的搜索和排序源码分析之——搜索
  7. Xmemcached failure stand by
  8. Django项目:前后端联调/ModelViewSet
  9. 5大要素,教你怎么选择合适的橱窗LED透明屏
  10. 打印直角三角形,等腰三角形、直角梯形、等腰梯形