1 条题解

  • 4
    @ 2024-4-27 13:11:57

    【题目大意】

    统计长方形的个数。两个长方形的长和宽相等算一种情况,所以规定长大于宽;长和宽相等是正方形,是长方形的特例,算一种情况。统计完个数之后输出。

    【考纲知识点】

    变量的定义与使用、控制语句、基本运算、输入输出语句(一级)

    【解题思路】

    1. 定义变量:面积 area、计数变量 cnt、宽 w;
    2. 利用循环列举所有宽的可能性,从 1 开始,到宽*宽小于等于面积即可,后面大于宽的就是长了,和前面统计过的算一种情况,所以不用往后遍历。
    3. 每次循环判断面积对宽取余是不是为 0,如果为 0,说明长、宽都是整数,满足题意,计数变量 cnt++;
    4. for 循环结束后输出计数变量 cnt。

    【参考程序】

    #include <iostream>
    using namespace std;
    int main() {
        int area = 0, cnt = 0; //面积 area、计数变量 cnt
        cin >> area; //输入面积
        for (int w = 1; w * w <= area; w++) 
        { //宽从 1 开始到宽*宽<=面积
            if (area % w == 0) //如果面积是宽的倍数,说明满足题意,cnt++
                cnt++;
        }
        cout << cnt << endl; //输出 cnt
        return 0;
    }
    
    • 1

    信息

    ID
    474
    时间
    1000ms
    内存
    256MiB
    难度
    6
    标签
    递交数
    1560
    已通过
    495
    上传者