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≤232−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.
首先让每个屏幕都连一个信号源,用了k根线,然后剩下m-k个屏幕和k个信号源都连起来,所以总数就是k+(m-k)*k,整理后得(m-k+1)*k
#include <iostream>
#include <cstdio>
#define LL long long
using namespace std;
int main()
{
LL m,k;
while (scanf("%I64d%I64d",&m,&k)!=EOF)
{
printf("%I64d\n",(m-k+1)*k);
}
return 0;
}