给定一个 n×n 的矩阵 a,其中第 i 行第 j 列的元素 aij 等于 i×j(1≤i,j≤n)。
现在,给定一个整数 m,请你计算 m 在矩阵中出现的次数。
<!--输入-->
2
3 6
3 3
<!--输出-->
2
2
直接上代码
暴力可能会超时,修改一下下,应该就能过
#include <bits/stdc++.h>
#include <unordered_map>
using namespace std;
const int N = 1e6+10;
int n,m,t;
int main()
{
scanf("%d",&t);
while(t--)
{
scanf("%d%d", &n, &m);
int res=0;
for(int i=1;i<=n;i++)
if(m%i==0&&m/i<=n)res++;
cout<<res<<'\n';
}
return 0;
}
欢迎评论点赞