P8834 求有多少对和谐的一对
思路: 设置一个数组来存储每一个同学知道的那个数,再设置一个cnt=0,用于之后存储和谐的对数。再使用for循环和if语句进行题中条件的判断,如若符合条件则cnt++,循环完毕则输出cnt的数值
错误总结: 两个数进行运算时,注意其运算结果是否有数值溢出的风险,如果溢出则强制转换类型
include <stdio.h>
int main() { int n, i, j; int cnt = 0; long long k; int a[1003];
scanf("%d %lld", &n, &k);
for (i=0; i<n; i++)
{
scanf("%d", &a[i]);
}
for (i=0; i<n; i++)
{
for (j=i+1; j<n; j++)
{
if (k >= (long long)a[i]*a[j])//注意数值溢出问题;
{
cnt++;
}
}
}
printf("%d", cnt);
return 0;
}

浙公网安备 33010602011771号