【链接】 我是链接,点我呀:)

【题意】

题意

【题解】

设最后行分成了x行,列分成了y列。
那么答案就是floor(n/x)*floor(n/y)
然后x+y-2=k
//即平均分配x行、y列
我们可以枚举floor(n/x)的值
这个值其实就是n整除x
我们现在证明n/x的结果最多只可能有2*sqrt(n)个
证明:
当x小于$\sqrt{n}$时,n/x的值有$\sqrt{n}$个。
当x大于$\sqrt{n}$时,n/x的结果肯定小于$\sqrt{n}$,因此也只可能有$\sqrt{n}$个数字
所以综上,n/x的结果最多只可能有2*$\sqrt{n}$个数字
所以我们可以把1..$\sqrt{n}$和n/1,n/2...n/$\sqrt{n}$的值全都枚举一遍。
假设他们是n/x,然后求出最大的x(x越大,y就越小,m/y就越大),即n/这个数字。
然后算出来还剩下多少刀可以切在列上。
如果剩余的刀数小于0的话
不要忘记,我们是求出来最大的x,因此我们总是可以减少在行上切的刀数的(但最小的间距还是可以不变),然后让剩余的刀数变为0即可。
但是如果剩余刀数大于m-1了,那就说明行上能切的次数太少了,不能满足切成x行,即n/x取该值不合法

【代码】

#include <bits/stdc++.h>
#define ll long long
using namespace std; ll n,m,k;
vector<ll> v; int main()
{
cin >> n >> m >> k;
for (int i = 1;i*i <= n;i++){
v.push_back(n/i);
v.push_back(i);
}
ll ans = -1;
int len = v.size();
for (int ii = 0;ii < len;ii++){
//n/x
ll ndx = v[ii];
ll x = n/ndx;
ll rest = k-(x-1);
if (rest<0) rest = 0; //如果行砍的边太多了,可以少砍一点的,只要x个单位长度的连续边就好
if (rest>m-1) continue; //如果行砍得太少了则没有办法,因为没办法再多砍了
ll y = rest + 1;
if (ndx*(m/y)>ans){
ans = ndx*(m/y);
}
}
cout<<ans<<endl;
return 0;
}

最新文章

  1. 利用set排序数组并且去掉重复的数组元素
  2. struts2报错:There is no Action mapped for namespace [/] and action name [userAction!add]
  3. Java内存模型
  4. lnmp无法删除目录,目录包含.user.ini
  5. Flex文件结构
  6. ideadpad-安装win7
  7. FASTMM,FASTCODE,FASTMOVE请移步
  8. 单元测试利器JUnit4
  9. js理解
  10. How do I get the lowest value of all the non zero value pixels?
  11. MySQL(二)--事务与视图
  12. 【笔记】BFC 模型知识整理
  13. java对象池commons-pool-1.6详解(一)
  14. 洛谷P4482 [BJWC2018]Border 的四种求法 字符串,SAM,线段树合并,线段树,树链剖分,DSU on Tree
  15. python全栈开发day54-mysql库操作、表操作、数据类型、完整性约束
  16. 数据库只有mdf文件而没有ldf文件,如何恢复数据库
  17. centos6.5生产环境编译安装nginx-1.11.3并增加第三方模块ngx_cache_purge、nginx_upstream_check、ngx_devel_kit、lua-nginx
  18. asp.net MVC中防止跨站请求攻击(CSRF)的ajax用法
  19. Linux(CentOS)之-性能监控
  20. CheckBoxList 全选(jquery版本)

热门文章

  1. 今天发现一个汉字转换成拼音的模块,记录一下,直接pip install xpinyin即可
  2. AJPFX总结集合的概念
  3. git常用命令图解 &amp; 常见错误
  4. 一个Java编写的小玩意儿---多人在线聊天工具
  5. 【数据分析 R语言实战】学习笔记 第六章 参数估计与R实现(下)
  6. 重新部署mysql遇到的问题
  7. git项目常用命令
  8. 11gR2新特性---gipc守护进程
  9. react中的jsx详细理解
  10. Failed to load class “org.slf4j.impl.StaticLoggerBinder”