FOJ 1476 矩形的个数

一,题目描述

二,问题分析

1.公式法:长方形的个数 = 长边上的线段和×宽边上的线段和

2.排列组合法

一个长方形由四个顶点,四条边所确定

以一行m列为例,只有一行,所以长方形的宽已经确定为1,而长的确定就是组合问题,即在n个点中找两个点组合,注意这两个点可以重合,所以是C(m+1,2)

扩展问题,一个n行m列的长方形中,宽的组合 数C(n+1,2),长的组合数C(m+1,2)

故总共的长方形个数:C(n+1,2)*C(m+1,2)

 

三,代码解答

#include<stdio.h>
int main()
{
    long long int a, b;
    while (scanf_s("%lld%lld", &a, &b) != EOF)          //输入不止一组数据
        printf("%lld\n", a * (a + 1) / 2 * b * (b + 1) / 2);
    return 0;
}

1.输入数据不止一组, while (scanf_s("%lld%lld", &a, &b) != EOF) 

2.输入的两个整数最大可取 1000  ,其得到的结果超过了 int 类型的范围,故取 long long 类型

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值