Description:
Byteman has a collection of N squares with side 1. How many different rectangles can he form using these squares?
Two rectangles are considered different if none of them can be rotated and moved to obtain the second one. During rectangle construction, Byteman can neither deform the squares nor put any squares upon any other ones.
Input
The first and only line of the standard input contains one integer N (1 <= N <= 10000).
Output
The first and only line of the standard output should contain a single integer equal to the number of different rectangles that Byteman can form using his squares.
Example
For the input data:
6
the correct result is:
8
题意是给你一个数n,让你输出用<=n个边长为1的木块构成多少个矩形。
和上道题一样,找了会规律,结果各种考虑不周,最后选择暴力,就AC了。
AC代码:
#include <cstdio>
#include <iostream>
#include <cstring>
#include <algorithm>
#include <cmath>
using namespace std;
int main()
{
int n;
while(~scanf("%d",&n))
{
int ans = 0;
for(int i = 1; i <= n; ++i)
for(int j = 1; j <= (sqrt(i) + 0.5); ++j)
if(!(i % j)) ans++;
cout << ans << endl;
}
return 0;
}