题目大意:上面n个点,下面m个点,求上下之间两两相连最多几个交点。

解题思路:上两个点,下两个点的连线可有一个交点,不同的上下点,得到的交点不同,上面取两个点的取法有n*(n-1)/2,下面取两个点的取法有m*(m-1)/2。要用long long。

ac代码:


#include <iostream>
using namespace std;
long long n, m;
int cnt=1;
int main()
{
while (scanf("%lld%lld", &n, &m)!=EOF && n+m)
printf("Case %d: %lld\n", cnt++, n*(n-1)*m*(m-1)/4);
return 0;
}