Nowadays, little haha got a problem from his teacher.His teacher wants to design a big logo for the campus with some circles tangent with each other. And now, here comes the problem. The teacher want to draw the logo on a big plane. You could see the…
题面 传送门 这题有两种方法(然而两种我都想不到) 方法一 前置芝士 笛卡尔定理 我们定义一个圆的曲率为\(k=\pm {1\over r}\),其中\(r\)是圆的半径 若在平面上有两两相切,且六个切点互不相同的四个圆,设其曲率分别为\(k1,k2,k3,k4\)(若该圆和其它所有圆都外切,则其曲率取正,否则曲率取负),则有 \[(k1+k2+k3+k4)^2=2(k1^2+k2^2+k3^2+k4^2)\] 类似的,若是空间中有两两相切且切点互不相同的五个球体,则有 \[(k1+k2+k3+…
The Designer Time Limit: 8000/4000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 761    Accepted Submission(s): 142 Problem Description Nowadays, little haha got a problem from his teacher.His teacher wants to desi…
本文版权归BobHuang和博客园共有,不得转载.如想转载,请联系作者,并注明出处.   Nowadays, little hahahaha got a problem from his teacher.His teacher wants to design a big logo for the campus with some circles tangent with each other. And now, here comes the problem. The teacher want t…
LINK 题意:一个大圆中内切两个圆,三个圆两两相切,再不断往上加新的相切圆,问加上的圆的面积和.具体切法看图 思路:笛卡尔定理: 若平面上四个半径为r1.r2.r3.r4的圆两两相切于不同点,则其半径满足以下结论: (1)若四圆两两外切,则    (2)若半径为r1.r2.r3的圆内切于半径为r4的圆中,则    显然现在是第二种情况,设弧度为$k$则,$r_1,r_2,r_3,r_4$的弧度为$k_1,k_2,k_3,k_4$,其中$r_4$是下个我们要求的圆的半径,显然我们已知前三个圆,第…
题目传送门//res tp nowcoder 分析 定理:B1~B2当且仅当B1与B2有同构的笛卡尔树. (B₁~B₂ iff B₁ and B₂ have isomorphic Cartesian trees.) 对A与B同时构建小根堆性笛卡尔树,每次同时插入结点时,判断是否同构即可. #include<iostream> #include<cstdio> using namespace std; const int L = 100010; int a[L],b[L],u[L],…
2178 表达式运算Cuties  时间限制: 1 s  空间限制: 32000 KB  题目等级 : 大师 Master 题解  查看运行结果     题目描述 Description 给出一个表达式,其中运算符仅包含+,-,*,/,^要求求出表达式的最终值 数据可能会出现括号情况 还有可能出现多余括号情况 数据保证不会出现>maxlongint的数据 数据可能回出现负数情况 输入描述 Input Description 仅一行,即为表达式 输出描述 Output Description 仅一…
[题目分析] 本来是单调栈的题目,用笛卡尔树可以快速的水过去. 把每一个矩阵看成一个二元组(出现的顺序,高度). 然后建造笛卡尔树. 神奇的发现,每一个节点的高度*该子树的大小,就是这一块最大的子矩阵的可能解. 用二元组的第一个下标来限制,使它们在一块儿,然后堆的性质又限制了宽度以及高度. 计算,取最值即可. [代码] #include <cstdio> #include <cstring> #include <cstdlib> #include <cmath&g…
题目描述 对于1 位二进制变量定义两种运算: 运算的优先级是: 先计算括号内的,再计算括号外的. “× ”运算优先于“⊕”运算,即计算表达式时,先计算× 运算,再计算⊕运算.例如:计算表达式A⊕B × C时,先计算 B × C,其结果再与 A 做⊕运算. 现给定一个未完成的表达式,例如+(*_),请你在横线处填入数字0 或者1 ,请问有多少种填法可以使得表达式的值为0 . 输入输出格式 输入格式: 输入文件名为exp.in ,共 2 行. 第1 行为一个整数 L,表示给定的表达式中除去横线外的运…
将两张表的情况全部列举出来 结果表: 列= 原表列数相加 行= 原表行数相乘     CROSS JOIN连接用于生成两张表的笛卡尔集. 在sql中cross join的使用: 1.返回的记录数为两个表的记录数乘积. 2.将A表的所有行分别与B表的所有行进行连接. 例如: tableA r1 r2 A B C D tableB r3 r4 1 2 3 4 select * from tableA cross join tableB; return: r1 r2 r3 r4 r1 r2 1 2 r…