题解:SP5464 CT - Counting triangles
一道数学题。
直接枚举每个点能组成的等腰直角三角形。
公式:
最后:
不开 long long 见祖宗。
代码就很简单了:
#include<bits/stdc++.h>
using namespace std;
long long t, x, y, ans;
int main(){
cin >> t;
while(t --){
cin >> x >> y;
ans = 0;//一定要清零,我就是这样喜提WA的
for(long long i = 0; i <= x; i ++)
for(long long j = 0; j <= y; j ++)
ans += (min(i - j + y, x) - max(i - j, (long long)0) + (long long)1) * (min(i + j, y) - max(i + j - x, (long long)0) + (long long)1) - (long long)1;//公式,记得加longlong,不然会报错
printf("%lld\n", ans);
}
return 0;
}
``
posted on 2024-04-10 18:46 zhangzirui66 阅读(4) 评论(0) 编辑 收藏 举报 来源