zoukankan      html  css  js  c++  java
  • HDU 2524 矩形A + B 解题心得

    原题:

    Description

    给你一个高为n ,宽为m列的网格,计算出这个网格中有多少个矩形,下图为高为2,宽为4的网格. 
     

    Input

    第一行输入一个t, 表示有t组数据,然后每行输入n,m,分别表示网格的高和宽 ( n < 100 , m < 100). 
     

    Output

    每行输出网格中有多少个矩形.
     

    Sample Input

    2 1 2 2 4
     

    Sample Output

    3 30
     
    分析:这道题目貌似是小学题目,就是多画画,找找规律就可以了 
      因为这道题目给的案例数量是最大是100*100,数据并不大,所以可以采取暴力打表,把所有可能的情况用总结出来的公式快速计算出来并存储在数组中,
      具体案例就输出数组对应的数就可以了。
     
     
    我的代码:
    #include<iostream>
    #include<cstdio>
    using namespace std;
    
    int f[110][110];
    int main()
    {
        f[1][1] = 1;
        for (int i =2; i < 110; i++)
        {
            f[1][i] = f[1][i - 1] + i;
            f[i][1] = f[i - 1][1] + i;
        }
        for (int i = 2; i < 110; i++)
        {
            for (int j = 2; j < 110; j++)
            {
                f[i][j] = f[i][1] * f[1][j];
            }
        }
        
        int t;
        cin >> t;
        while (t--)
        {
            int n, m;
            cin >> n >> m;
            cout << f[n][m] << endl;
        }
    
        return 0;
    }
    View Code
  • 相关阅读:
    笔试
    Java
    工作中问题总结
    suitcrm安装及虚拟机
    python邮件读取2
    restful api
    python 邮件读取
    suiteCRM____Admin
    pdf提取信息到excel
    Maven笔记
  • 原文地址:https://www.cnblogs.com/shawn-ji/p/4696565.html
Copyright © 2011-2022 走看看