【hihocoder 1476】矩形计数】的更多相关文章

先说一个简单的题目(题目大意自己看去,反正中文):hihocoder上的:http://hihocoder.com/problemset/problem/1476 然后因为这个n和m的矩阵范围是1000,所以比较简单 然后我们说一下hihocoder上面的做法,首先,这题的做法是http://www.cnblogs.com/heimao5027/p/6738715.html的简化版本,因为颜色只有两种,所以和前面链接给的做法那样,用单调栈维护一下即可. //看看会不会爆int!数组会不会少了一维…
题目链接 如图所示,在由N行M列个单位正方形组成的矩形中,有K个单位正方形是黑色的,其余单位正方形是白色的. 你能统计出一共有多少个不同的子矩形是完全由白色单位正方形组成的吗? ---------------------------------------------------------------------------------------------------- 思路: 完全白色矩形数目 = 总个数 - 包含黑块的矩形数目. 包含黑块的矩形数目 = 包含一个黑块 - 包含两个黑块…
[题目链接]:http://hihocoder.com/problemset/problem/1476 [题意] [题解] 首先不考虑黑格子,计算出一共有多少个矩形: 枚举矩形的大小r×c,这样大小的矩形一共有(N−r+1)(M−c+1)个. 然后减去不符合要求的矩形,也就是减去包含第一个黑格子的矩形个数,减去包含第二个黑格子,第三个的-- 然后再加上包含第一第二黑格子的矩形数-- 也就是容斥原理. (奇数个黑色格子就减,偶数个就加) 每一项的具体值如下计算:对于这些不能包含的格子,统计最左最右…
http://hihocoder.com/problemset/problem/1040 首先判断四条线段是否相交,给出八个点,如果有一些点重合,并且不同坐标的点只有4个的话,表示可以构成四边形. 然后判断每一条线段与其他线段树平行或者垂直,每一条线段都和其他线段平行或垂直的话就能构成矩形. 平行或相交可以用斜率计算,注意斜率不存在或者等于0的情况. 平行斜率相等,垂直的话斜率相乘等于-1,或者一个不存在一个为0. #include<iostream> #include<cstdio&g…
http://acm.fzu.edu.cn/problem.php?pid=1476  Problem Description 在一个3*2的矩形中,可以找到6个1*1的矩形,4个2*1的矩形3个1*2的矩形,2个2*2的矩形,2个3*1的矩形和1个3*2的矩形,总共18个矩形. 给出A,B,计算可以从中找到多少个矩形.  Input 本题有多组输入数据,你必须处理到EOF为止 输入2个整数A,B(1<=A,B<=1000)  Output 输出找到的矩形数. 排列组合问题,从A+1条边选2,…
矩形判断 给出平面上4条线段,判断这4条线段是否恰好围成一个面积大于0的矩形. Input 输入第一行是一个整数T(1<=T<=100),代表测试数据的数量. 每组数据包含4行,每行包含4个整数x1, y1, x2, y2 (0 <= x1, y1, x2, y2 <= 100000):其中(x1, y1), (x2,y2)代表一条线段的两个端点. Output 每组数据输出一行YES或者NO,表示输入的4条线段是否恰好围成矩形. Sample Input 3 0 0 0 1 1…
#1040 : 矩形判断 时间限制:1000ms 单点时限:1000ms 内存限制:256MB 描述 给出平面上4条线段,判断这4条线段是否恰好围成一个面积大于0的矩形. 输入 输入第一行是一个整数T(1<=T<=100),代表测试数据的数量. 每组数据包含4行,每行包含4个整数x1, y1, x2, y2 (0 <= x1, y1, x2, y2 <= 100000):其中(x1, y1), (x2,y2)代表一条线段的两个端点. 输出 每组数据输出一行YES或者NO,表示输入的…
注意点:精度 #include<iostream> using namespace std; typedef long long ll; int main() { int a,b; ll cnt=; while(cin>>a>>b) { cnt=; cnt=(+a)*a*(+b)*b/ a,b都为整型 需要强制转化为ll 或将a,b定义为ll cout<<cnt<<endl; } ; }…
矩形计数(rect) Description 给出圆周上的 \(N\) 个点,请你计算出以这些点中的任意四个为四个角,能构成多少个矩 形. 点的坐标是这样描述的,给定一个数组 \(v[1..N]\),假设圆心为\((0,0)\),圆的周长 \(C=\sum_{i=1}^{N} v_i\) ,第一个点坐标为\((0,C/(2π))\).从第一个点开始,顺时针沿圆周走 \(v_1\) 个单位长度, 此时坐标为第二个点的坐标,再走 \(v_2\) 个单位长度,此时为第三个点的坐标,当走完 \(v_1,…
#1178 : 计数 Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://hihocoder.com/problemset/problem/1178 Description Rowdark是一个邪恶的魔法师.在他阅读大巫术师Lich的传记时,他发现一类黑魔法来召唤远古生物,鱼丸. 魔法n能召唤类型i鱼丸当且仅当i能够被表示为x xor n*x对于某个正整数x和固定的n. Rowdark想知道类型为[L,R]之间的鱼丸有多少种能被魔法n召唤. I…