【bzoj3505】[Cqoi2014]数三角形
来源:互联网 发布:网络机顶盒和网络电视 编辑:程序博客网 时间:2024/05/29 16:30
Description
给定一个nxm的网格,请计算三点都在格点上的三角形共有多少个。下图为4x4的网格上的一个三角形。
注意三角形的三点不能共线。
Input
输入一行,包含两个空格分隔的正整数m和n。
Output
输出一个正整数,为所求三角形数量。
Sample Input
2 2
Sample Output
76
数据范围
1<=m,n<=1000
题解
先计算取任取3个点的方案数,然后减去在同一直线上的方案数。
代码
#include<bits/stdc++.h>#define N 1005#define ll long long#define mo 1000000007using namespace std;ll ans;int n,m;inline int read(){ int x=0,f=1;char ch=getchar(); while(ch<'0'||ch>'9'){if(ch=='-')f=-1;ch=getchar();} while(ch>='0'&&ch<='9'){x=x*10+ch-'0';ch=getchar();} return x*f;}int gcd(int a,int b){if (b==0) return a;else return gcd(b,a%b);}int main(){ n=read()+1;m=read()+1; ans=1LL*(n*m)*(n*m-1)*(n*m-2)/6; for (int i=0;i<n;i++) { for (int j=0;j<m;j++) { if (i||j) { ll x=(gcd(i,j)-1)*(n-i)*(m-j); if (i!=0&&j!=0) ans-=2*x; else ans-=x; } } } cout<<ans; return 0;}
阅读全文
0 0
- [Bzoj3505][Cqoi2014]数三角形
- bzoj3505 [Cqoi2014]数三角形
- bzoj3505: [Cqoi2014]数三角形
- bzoj3505 [Cqoi2014]数三角形
- 【CQOI2014】【BZOJ3505】数三角形
- bzoj3505【CQOI2014】数三角形
- bzoj3505: [Cqoi2014]数三角形
- 【bzoj3505】[Cqoi2014]数三角形
- bzoj3505 [Cqoi2014]数三角形
- bzoj3505 [Cqoi2014]数三角形
- BZOJ3505 [Cqoi2014]数三角形
- 【bzoj3505】 CQOI2014数三角形 数学
- bzoj3505 [Cqoi2014]数三角形 题解
- BZOJ3505 [Cqoi2014]数三角形 数学
- 【bzoj3505】【CQOI2014】【数三角形】【组合数学】
- BZOJ3505: [Cqoi2014]数三角形 解题报告
- 组合数学+gcd BZOJ3505 [Cqoi2014]数三角形
- 【组合】BZOJ3505(Cqoi2014)[数三角形]题解
- POJ 3186 Treats for the Cows(贪心)
- 最全的 JavaScript 开发环境介绍
- PHP实现页面静态化(简单版)
- 提高篇第二十讲二——二分法解方程
- 快速排序
- 【bzoj3505】[Cqoi2014]数三角形
- Spring-Ioc
- mysql表分区
- 在 System.Threading.ThreadAbortException 中出现的“mscorlib.dll”类型的异常
- lintcode(140)快速幂
- TPshop 2.05开源商城同步官方首发
- Redis使用详细教程
- JaveScript SetInterval 与setTimeout使用方法详解
- Codeforce Round #416