1366 - Pair of Touching Circles   PDF (English) Statistics Forum Time Limit: 3 second(s) Memory Limit: 32 MB You are given a rectangular grid of height H and width W. A problem setter wants to draw a pair of circles inside the rectangle so that they…
题目链接:http://lightoj.com/volume_showproblem.php?problem=1366 题意:给出一个矩形,在内部画两个圆A和B使得AB都完全在矩形内且AB相切且AB的圆心和半径都是整数.求有多少个这样的画法? 思路:总的来说,相切有两种情况:(1)水平或垂直方向相切.这个比较简单,枚举两个圆的直径,然后分水平垂直两种情况,计算较小的那个圆可以移动的范围,其实可以移动的范围是一个矩形:(2)斜着相切.这时候两个圆心的距离必然是一个勾股数.所以枚举勾股数,然后再枚举…
题目链接:http://lightoj.com/volume_showproblem.php?problem=1366 题意:一个H*W的矩形,现在要放入两个外切的圆,问能放多少对这样的圆,其中圆心和半径都是整数: 枚举相对的圆心坐标,根据圆心的距离,再枚举一个圆的半径: #include<stdio.h> #include<iostream> #include<string.h> #include<algorithm> #include<cmath&…
思路:(注意2个圆的半径可以不一样) 有2种情况: 1) 水平和竖直放.这种情况很简单,刚开始以为只有这种情况,但是样例5不对,后来知道还有一种情况. 2)斜线也可以放.只要满足勾股数就可以.现在的问题是怎样确定包含2个圆的矩形,可以通过枚举一个圆的半径 来确定. 代码如下: #include<iostream> #include<cstdio> #include<cmath> #include<algorithm> #include<cstring&…
Intersection Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 9996   Accepted: 2632 Description You are to write a program that has to decide whether a given line segment intersects a given rectangle. An example: line: start point: (4,9) …
设想这么一个简单的问题,在一个平面上有n个点,给定一个矩形,问位于矩形内的点有哪些. 这个问题的简单思路非常简单,每次遍历所有点,看其是否在给定的矩形中.时间复杂度呢?单次查询的时间就是一次遍历的时间,也就是O(n),但如果给定的点基本不变,但查询量特别大,每次查询都要以O(n)的复杂度.能不能把给定的数据预处理一下,然后以后每次查询的复杂度降低呢? 一个基本的思路是把相邻的点用最小包围矩形包起来,然后再递归地处理这些矩形,以更大的最小包围矩形包围这些相邻的矩形.下图是个简单的例子: 在查询一个…
1.统计每分钟内 url 的访问数量 SELECT SUBSTRING(CONVERT(varchar(100), date, 20), 0,17) as dateTime,COUNT(url) as count,url,referer FROM demo GROUP BY url,(SUBSTRING(CONVERT(varchar(100), date, 20), 0,17) ),referer;…
洛谷P2241-统计方形 题目描述: 有一个 \(n \times m\) 方格的棋盘,求其方格包含多少正方形.长方形(不包含正方形). 思路: 所有方形的个数=正方形的个数+长方形的个数.对于任意一个\(x\times y\)的矩形,以这个方形右下角的那个块作为要在矩形内选择正方形\长方形的右下角,则正方形的个数为\(min(x,y)\),长方形的个数为\(x*y\). 解释如下:对于一个\(x\times y\)的矩形,右下角的块必选,则能和这个块组成的正方形的右上角块全在这个主对角线上,而…
题目链接:https://vjudge.net/contest/28079#problem/R 题目大意:给你分别给你两个日期(第二个日期大于等于第一个日期),闰年的2月29日称为闰日,让你求两个日期之间的闰日数量. 解题思路:①先求闰年数量,可以根据容斥原理,得到ans=(year2/4-year1/4)-(year2/100-year1/100)+(year2/400-year1/400) ②根据year1和year2的月份特判该年是否含闰日,注意一下上面的算式中ans包含了year2而没有…
Given a two-dimensional array of positive and negative integers, a sub-rectangle is any contiguous sub-array of size 1 x 1 or greater located within the whole array. The sum of a rectangle is the sum of all the elements in that rectangle. In this pro…
Intersection 大意:给你一条线段,给你一个矩形,问是否相交. 相交:线段全然在矩形内部算相交:线段与矩形随意一条边不规范相交算相交. 思路:知道详细的相交规则之后题事实上是不难的,可是还有个坑点就是题目里明明说给的是矩形左上角跟右下角的点,但实际上不是,须要又一次推断一下...真坑. struct Point { double x, y; } A, B, C, D; struct Line { Point a, b; } L; int n; double xmult(Point p1…
今天拿到一个查询需求,需要统计某一天各个时间段内的记录数量. 具体是统计某天9:00至22:00时间段,每半小时内订单的数量,最后形成的数据形式如下: 时间段          订单数 9:00~9:30 xx个 9:30~10:00 xx个 ...   如果说是按每个小时来统计订单数量,这个是比较简单的,只要将订单表中的OrderTime字段中的小时取出,然后根据每个小时的值进行group by就可以了. select T.timehour,count(T.orderid) as number…
1,将城市地图拆分等距拆分为矩形 数据结构如图: 2.查看高德JS API (点是否在多边形内)核心代码: a=[114.069564,22.545774]; b=[ [114.067595,22.552082], [114.077322,22.552082], [114.077322,22.543099], [114.067595,22.543099], ]; c=true lf: function(a, b, c) { var d = a[0]; a = a[1]; var f = !1,…
题目描述:区间染色问题,统计给定区间内有多少种颜色? 线段树模板的核心是对标记的处理 可以记下沿途经过的标记,到达目的节点之后一块算,也可以更新的时候直接更新到每一个节点 Lazy操作减少修改的次数(在查询或者修改的过程中才更新标记对节点val值的影响,每次更新val值只更新到当前要查询或者修改的节点,最底层的标记以下的节点的val值应该是没有被更新过) Pushdown向下传递标记和修改子节点的val值, Pushup修改递归访问的节点的val值(更新父节点的val值) 大区间和小区间的先后修…
这个题目要注意的是:给出的矩形坐标不一定是按照左上,右下这个顺序的 #include <iostream> #include <cstdio> #include <cstring> #include <algorithm> #include <cmath> #define eps 1e-8 #define INF 1e9 using namespace std; const int maxn=100; typedef struct Point {…
代码如下: list01 = ['a','b','c','a','c'] set01 = set(list01) print(set01) dict01 = {} for item in set01: dict01.update({item:list01.count(item)}) print(dict01) 结果: 'c', 'b', 'a'} {'c': 2, 'b': 1, 'a': 2}…
import java.util.Arrays; public class test2 { public static void main(String[] args) { int winSize = 3; int moveStep = 2; int total = 9; System.out.println("样本为:"); for(int i=0;i<total;i++){ System.out.print(i+" "); } System.out.pri…
这个也是一个线段树的模板 #include<iostream> #include<string.h> #include<algorithm> #include<stdio.h> #include<set> using namespace std; ; set<int>s; struct node{ int color; int left; int right; int mid; }a[maxx<<]; void pushd…
PTA 7-33 统计素数并求和 #include<stdio.h> #include<math.h> int prime(int p); int main() { int m,n,i; ; ; scanf("%d %d",&m,&n); for(i = m; i <= n; i++) { if(prime(i)) { sum += i; count++; } } printf("%d %d",count,sum); }…
declare @datefrom as datetime,@dateto as datetime set @datefrom='2015-04-12' set @dateto='2015-08-13' declare @table as table(dweek int,fdate datetime,tdate datetime) declare @yearfrom as int,@monthfrom as int,@dayfrom as int declare @yearto as int,@…
#!/usr/bin/python #-*- coding: utf- -*- import os import re rawfile = '/var/log/auth.log' def rawparse(rawfile): ipdict = {} fhandle = open(rawfile,'r') regexp = re.compile('\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}') for line in fhandle: result = regexp.fi…
链接:https://www.nowcoder.com/acm/contest/130/B来源:牛客网 黑妹和黑弟又聚在一起玩游戏了,这次他们选择在一个n*m的棋盘上玩游戏,棋盘上的每个方格都有一个非负的分数, 游戏从左上角开始右下角结束,双方交替的选择一个方格并获得方格上相应的分数,一方选择的方格必须在上一步另一方选择的方格 的右边或者下面,黑妹先开始.现在黑妹想知道,如果双方都采取最优策略(最优策略是指双方都希望最终自己的总分数减去对方的总分数最大),她的总分数减去黑弟的总分数会是多少? 输…
脚本代码如下: ceph pg dump | awk ' /pg_stat/ { col=; while($col!=“up”) {col++}; col++ } /[-9a-f]+.[-9a-f]+/ { match($,/^[-9a-f]+/); pool=substr($, RSTART, RLENGTH); poollist[pool]=; up=$col; i=; RSTART=; RLENGTH=; delete osds; -]+/)>) { osds[++i]=substr(up…
=SUBTOTAL(3,A1:A5)  #计算筛选出的表格中A1:A5中有几个值. =SUBTOTAL(3,I71:I21447)  ,在I71:I21447之间计数,会自动略去没有筛选上的隐藏单元格号…
Dhaka2011 A - Binary Matrix 题目描述:有一个\(n \times m\)的\(01\)矩阵,这一矩阵第一行和最后一行是相邻的,第一列和最后一列是相邻的,现在每次可以交换相邻的两个位置的数(四相邻),问最少多少次操作使得每一行的\(1\)的个数相同,每一列的\(1\)的个数相同,如果不行,则最少多少次操作使得每一行的\(1\)的个数相同,如果不行,则最少多少次操作使得每一列的\(1\)的个数相同,如果不行,则输出无解. solution 行和列是独立的,因此可以分开做,…
要back的题目 目标是全绿!back一题删一题! acmm7 1003 1004 acmm8 1003 1004 sysu20181013 Stat Origin Title Solved A Gym 100624A Kingdoms   B Gym 100624B Who wants to live forever? Solved C Gym 100624C Chemist's vows   D Gym 100624D Non-boring sequences Attempted E Gym…
传送门 A - A+...+B Problem 题意:n个数最大值a,最小值b,求和的可能数量. #include<cstdio> #include<algorithm> using namespace std; int read_p,read_ca; inline int read(){ read_p=;read_ca=getchar(); ') read_ca=getchar(); +read_ca-,read_ca=getchar(); return read_p; } in…
一.题意 一个N*M的矩形,点表示空地,X表示非空地,给你一个数字k,让你在这N*M的区域内找出一个空地数量不小于k且面积最小的矩形.输出矩形的面积. PS:原题的题意是在难懂啊. 二.思路 1.朴素的思想:枚举每个小矩形的左上角和右下角,统计矩形内空位置的个数(通过预处理后,可在O(1)的时间内求出结果),并记录最小.时间复杂度:O(N*N*M*M),最大81E的复杂度,铁定超时. 2.尺取法:预处理出左上角为(1, 1),右下角为(i, j)的矩形内空地的个数.枚举上下任意两行,或者左右任意…
题目描述 JYY有N个平面坐标系中的矩形.每一个矩形的底边都平行于X轴,侧边平行于Y轴.第i个矩形的左下角坐标为(Xi,Yi),底边长为Ai,侧边长为Bi.现在JYY打算从这N个矩形中,随机选出两个不同的矩形,并计算它们的并的大小.JYY想知道,交的大小的期望是多少.换句话说即求在所有可能的选择中,两个矩形交的面积的平均大小是多大. 输入 输入一行包含一个正整数N. 接下来N行,每行4个整数,分别为Xi,Yi,Ai,Bi 2 < =  N < =  2*10^5, 0 < =  Xi,…
题目链接:传送门 题目大意:给你四条线段,判断能否围成一个面积大于0的矩形,能输出YES,不能输出NO 题目思路:    合法的四条线段应该满足 1.应该必须有四个不同的点 2.线段斜率分为两组,组内相同组间不同 3.若有斜率为0或斜率不存在的线段需特判,否则看斜率不同的线段乘积==-1?"YES":"NO" #include <iostream> #include <cstdio> #include <cstdlib> #inc…