首页 > 编程知识 正文

Codeforces 52B Right Triangles 数学

时间:2023-05-04 17:58:47 阅读:249216 作者:3306

Right Triangles

题目链接

分类:combinatorics

1.题意概述 给你一个 n×m 的字符串矩阵(由.和*组成),问你有多少个与矩阵边平行的直角三角形? 2.解题思路 对于|_和_|形的三角形,我们只需要在底边_上方看有多少个*即可,所以公式就是 (x[i]−1)×(y[i]−1) ,对每一次累加求和即为答案。 3.AC代码 char g[N][N];int a[N], b[N];int main() { int n, m; scanf("%d%d", &n, &m); rep(i, 0, n) scanf("%s", g[i]); rep(i, 0, n) { rep(j, 0, m) { if (g[i][j] == '*') { a[i]++; b[j]++; } } } ll ans = 0; rep(i, 0, n) { rep(j, 0, m) { if (g[i][j] == '*') ans += (a[i] - 1) * (b[j] - 1); } } printf("%I64dn", ans); return 0;}
Android开发使用strings.xml多语言翻译的方法是什么

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。