前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Problem 1002-2017 ACM/ICPC Asia Regional Shenyang Online

Problem 1002-2017 ACM/ICPC Asia Regional Shenyang Online

作者头像
Enterprise_
发布2019-02-21 17:09:42
3290
发布2019-02-21 17:09:42
举报
文章被收录于专栏:小L的魔法馆小L的魔法馆
  • 网络赛:2017 ACM/ICPC Asia Regional Shenyang Online
  • 题目来源:cable cable cable
  • Problem Description: Connecting the display screen and signal sources which produce different color signals by cables, then the display screen can show the color of the signal source.Notice that every signal source can only send signals to one display screen each time. Now you have M display screens and K different signal sources(K≤M≤2^32−1). Select K display screens from M display screens, how many cables are needed at least so that any K display screens you select can show exactly K different colors.
  • Input Multiple cases (no more than 100), for each test case: there is one line contains two integers M and K.
  • Output Output the minimum number of cables N.
  • Sample Input 3 2 20 15
  • Sample Output 4 90
  • Hint
这里写图片描述
这里写图片描述

As the picture is shown, when you select M1 and M2, M1 show the color of K1, and M2 show the color of K2. When you select M3 and M2, M2 show the color of K1 and M3 show the color of K2. When you select M1 and M3, M1 show the color of K1.

  • 题目分析:对于每个测试样例给两个整数,分别是M个display screens,K个different signal sources,(K≤M≤2^32−1),从M个screens中选出K个screens,在源头和屏幕之间连线,使得这K个屏幕可以显示出不同的K中颜色。 连线只存在源头和屏幕之间。
  • 我的思路: 首先,对于K个源点,先对K个屏幕连一条线,以K=3,M=4为例子:
这里写图片描述
这里写图片描述

每个源点选择一个屏幕进行连线,如下图:

这里写图片描述
这里写图片描述

这样会剩下(M-K)个屏幕在链接的时候一定会链接不同的源点,并且链接的源点一定是K个,因为在显示的时候是要求选择K个屏幕同时出现不同的颜色,如果链接的源点少于K个就会出现重复颜色。如下图:

这里写图片描述
这里写图片描述

最后,可以得到一个公式: 需要的连线数目=K+(M-K)* K , 整理得K*(M+1)-K*K 需要注意一下M,K的范围,需要用long long存,要不就是WA…..Orz

  • 完整代码:
代码语言:javascript
复制
#include<stdio.h>
int main(void)
{
    long long M, K;
    while (scanf("%lld%lld", &M, &K) != EOF)
    {
        printf("%lld\n", K*(M + 1) - K*K);
    }
    return 0;
}
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017年09月10日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档