题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6195

题意:有M个格子,有K个物品。我们希望在格子与物品之间连数量尽可能少的边,使得——不论是选出M个格子中的哪K个,都可以与K个物品恰好一一匹配。

解法:从样例猜出答案应该是K*(M-K+1)。从这个样例可以找到合法的解决方案。每个物品,都要向(M - K + 1)个格子连去一条边,我们会丢弃M - K个格子,但总会剩下一个格子是与这个物品连边的。

我们强制这样连边1 -> [1, M - K + 1]   2 -> [2, 1 + M - K + 1]   3 -> [3, 2 + M - K + 1]  K -> [K, M]  这样不论选哪些格子,第一个物品总是能匹配第一个格子,第二个物品总是能匹配第二个格子…… 所以总能合法匹配!

#include <bits/stdc++.h>
using namespace std;
typedef long long LL;
int main()
{
LL M,K;
while(~scanf("%lld %lld", &M,&K))
{
LL ans = K*(M-K+1);
printf("%lld\n", ans);
}
return 0;
}

最新文章

  1. 使用ASP.NET Web API Help Pages 创建在线接口文档
  2. opencv高斯背景建模
  3. solr4.2 solrconfig.xml配置文件简单介绍
  4. jQuery 侧栏菜单点击body消失
  5. shell 判断文件、目录是否存在
  6. PHP数据结构:栈、队列、堆、固定数组
  7. JavaEE Tutorials (29) - Duke辅导案例研究示例
  8. PHP ORM笔记
  9. Matlab实用技巧
  10. 关于java中的值传递与引用传递遇到的问题
  11. 51 nod 1188 最大公约数之和 V2
  12. Linux(二)—— Unix&amp;Linux 的基本概念
  13. echarts tree 树型图层级距离设置
  14. mysql自增主键
  15. 设计模式 笔记 责任链模式 chain of responsibility
  16. 【Android UI设计与开发】第02期:引导界面(二)使用ViewPager实现欢迎引导页面
  17. Android——Fragment过度动画分析一(转)
  18. Sublime Text 3.1.1 Build 3176 注册码破解
  19. Python自动化之clean方法前端调用clean方法的错误
  20. Bootstrap抽样(自展法)

热门文章

  1. 【开发工具IDE】eclipse的web项目的tomcat安装部署问题
  2. C++解析(8):C++中的新成员
  3. grub引导启动 win10 Ubantu 凤凰OS 三系统
  4. WordPress忘记密码找回登录密码的四种行之有效的方法
  5. Mybatis笔记二:org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)
  6. Oracle 高性能SQL引擎剖析----执行计划
  7. 【JQuery】效果
  8. 洛谷 P3539 [POI2012]ROZ-Fibonacci Representation 解题报告
  9. 【DP】CF859C Pie Rules
  10. python自学笔记(一)