codeforces #519 A A. Multiplication Table (暴力)

A. Multiplication Table
time limit per test
1 second
memory limit per test
256 megabytes
input
standard input
output
standard output

Let's consider a table consisting of n rows and n columns. The cell located at the intersection of i-th row and j-th column contains number i × j. The rows and columns are numbered starting from 1.

You are given a positive integer x. Your task is to count the number of cells in a table that contain number x.

Input

The single line contains numbers n and x (1 ≤ n ≤ 105, 1 ≤ x ≤ 109) — the size of the table and the number that we are looking for in the table.

Output

Print a single number: the number of times x occurs in the table.

Sample test(s)
input
10 5
output
2
input
6 12
output
4
input
5 13
output
0
Note

A table for the second sample test is given below. The occurrences of number 12 are marked bold.

 

 

我的内心是崩溃的。。。

20天没写代码。。。

然后这道谁题。。。竟然wa了两次。。。

其实思路是没有错的。。。

然后自作聪明得想优化。。。

把优化去掉就A了。。

慢慢恢复感觉==

哦,光扯了。

这道题很显然。。。x出现的话,在每一行只可能出现0次或1次。。

要同时满足 x%i==0 和 x/i<=n

 

/*******************************************************************
Author :111qqz
*******************************************************************/

#include <algorithm>
#include <cstdio>
#include <iostream>
#include <cstring>
#include <string>
#include <cmath>
#include <map>
#include <stack>
#include <queue>
#include <set>

using namespace std;
typedef long long LL;
typedef unsigned long long ULL;
const int inf = 0x7fffffff;
int main()
{
    int n,x;
    int ans=  0;
    cin>>n>>x;
    for ( int i = 1 ; i <= n ; i++)
    {
        if (x%i==0 && x/i<=n)
        {
            ans++;
        }
    }
    cout<<ans<<endl;

    return 0;
}

 

posted @ 2015-09-14 20:22  111qqz  阅读(338)  评论(0编辑  收藏  举报