Codeforces Round #273(Div2) B. Random Teams 贪心+数学
来源:互联网 发布:ipadair下载不了软件 编辑:程序博客网 时间:2024/04/26 19:03
最大值:
n个人,其中m-1个队中只有一个人,剩下的人都放在一个组里
最小值:每一组的人数尽量平均
证明:最小值:令第i个team人数为xi, 则所求为.则
又: .故
整理得: ,当且仅当时,f取得最小值
所以当n整除m时,f取得最小值.
当n不整除m时,n % m部分有两种选择:
①给其中n % m个team每个team多加一个人;
②其中一只team多加n % m人
令r = n % m;方案1多出来的pair数为:
方案2多出来的pair数为:
① - ② = , 由于,故① - ② <= 0,则① <= ②
代码如下:
#include <cstdio>using namespace std;int main(){long long m, n, min_val, max_val;scanf("%I64d %I64d", &n, &m);long long tmp = n / m;long long rest = n % m; min_val = tmp * (tmp - 1) / 2 * m + rest * tmp;max_val = (n - m) * (n - m + 1) / 2;printf("%I64d %I64d\n", min_val, max_val);}
0 0
- Codeforces Round #273(Div2) B. Random Teams 贪心+数学
- Codeforces-273(div2) B. Random Teams
- B. Random Teams(Codeforces Round 273)
- B. Random Teams(Codeforces Round 273)
- Random Teams(Codeforces Round 273)
- Codeforces Round #273 (Div. 2) --B Random Teams
- 【CODEFORCES】 B. Random Teams
- Codeforces 478B Random Teams(组合数学)
- Codeforces Round #274(Div2) B. Towers 贪心
- Codeforces Round#478--Random Teams
- 【Codeforces Round 273 (Div 2)B】【贪心】 Random Teams n人分m组,可形成的最小朋友数和最大朋友数
- codeforces-#478B. Random Teams
- Codeforces 478B. Random Teams
- Codeforces 478B Random Teams
- Codeforces 478B Random Teams
- codeforces 478B Random Teams
- codeforces round #347 div2 B rebus 贪心 + 二分
- Codeforces Round #275(Div2) B.Friends and Presents 二分+数学
- 二维数组动态存储分配
- 开源大数据查询分析引擎现状
- Android使用AttributeSet自定义控件的方法
- AnyPoint Studio/Mule ESB failed to create the java virtual machine 解决办法
- select2 及下拉翻页more
- Codeforces Round #273(Div2) B. Random Teams 贪心+数学
- WebAPI用法
- Funambol Developer's Guide 中 connector development例子的问题
- 关于android的webview 使用的问题 JS无法正常使用 界面切换出现白屏
- lamp shell命令行环境搭建
- linux服务器查看cpu相关信息
- stirng、wstring,char和wchar之间的转换
- input file表单上传控件的动态化
- 编译原理期末上交文档