Content

有一个 \(l\times w\) 大小的网格,其四周均被染成了红色,其余部分是棕色,已知红色网格与棕色网格的数量,求 \(l\) 与 \(w\) 的值。

Solution

接下来给各位上演一波大 力 解 方 程。

我们设红色格子的个数是 \(r\),棕色格子的个数是 \(b\)。那么我们通过题目给出的图可以看出棕色格子所占的矩形长 \(l-2\),宽 \(w-2\)。那么可以得到等式 \((l-2)(w-2)=b\)。

又由于我们知道网格只被涂成了红色和棕色,因此我们又得到了一个等式 \(lw=b+r\)。

由此我们得到了一个方程组:

\[\begin{cases}(l-2)(w-2)=b&(1)\\lw=b+r&(2)\end{cases}
\]

我们发现这个 \((1)\) 式不做变换的话不好进行后面的计算,因此我们考虑把 \((1)\) 式拆开:

\[\begin{aligned}lw-2l-2w+4&=b\\lw&=b+2(l+w)-4\end{aligned}
\]

然后我们发现,\(lw\) 既可以表示成 \(b+r\),也可以表示成 \(b+2(l+w)-4\),因此我们又得到了一个等式:

\[\begin{aligned}b+2(l+w)-4&=b+r\\2(l+w)-4&=r\\2(l+w)&=r+4\\l+w&=\dfrac{r+4}2\end{aligned}
\]

我们再一起看一下这两个等式:

\[\begin{cases}l+w=\dfrac{r+4}2\\lw=b+r\end{cases}
\]

我们发现,这就是一个典型的韦达定理,即 \(x_1+x_2=-\dfrac ba\),\(x_1x_2=\dfrac ca\),于是我们不妨将 \(l,w\) 看作是一个一元二次方程的两个根,于是我们就可以得到这个一元二次方程 \(x^2-\dfrac{r+4}2+r+b=0\)。

又由于题目告诉我们,\(l,w\) 保证有解,于是我们解这个方程,得:

\[x_1=\dfrac{\dfrac{r+4}2+\sqrt{\dfrac{(r+4)^2}4-4(r+b)}}{2}=\dfrac{r+4+\sqrt{(r+4)^2-16(r+b)}}{4}
\]
\[x_2=\dfrac{\dfrac{r+4}2-\sqrt{\dfrac{(r+4)^2}4-4(r+b)}}{2}=\dfrac{r+4-\sqrt{(r+4)^2-16(r+b)}}{4}
\]

又由于我们的 \(r,b\) 都是正整数,因此我们可以推出 \(x_1>x_2\),因此不需要再去比较交换什么的就可以直接输出。

Code

因为代码实在是太简单,就给各位自己写吧qwq。

SP8374 PARKET1 - PARKET 题解的更多相关文章

  1. 2016 华南师大ACM校赛 SCNUCPC 非官方题解

    我要举报本次校赛出题人的消极出题!!! 官方题解请戳:http://3.scnuacm2015.sinaapp.com/?p=89(其实就是一堆代码没有题解) A. 树链剖分数据结构板题 题目大意:我 ...

  2. noip2016十连测题解

    以下代码为了阅读方便,省去以下头文件: #include <iostream> #include <stdio.h> #include <math.h> #incl ...

  3. BZOJ-2561-最小生成树 题解(最小割)

    2561: 最小生成树(题解) Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 1628  Solved: 786 传送门:http://www.lyd ...

  4. Codeforces Round #353 (Div. 2) ABCDE 题解 python

    Problems     # Name     A Infinite Sequence standard input/output 1 s, 256 MB    x3509 B Restoring P ...

  5. 哈尔滨理工大学ACM全国邀请赛(网络同步赛)题解

    题目链接 提交连接:http://acm-software.hrbust.edu.cn/problemset.php?page=5 1470-1482 只做出来四道比较水的题目,还需要加强中等题的训练 ...

  6. 2016ACM青岛区域赛题解

    A.Relic Discovery_hdu5982 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Jav ...

  7. poj1399 hoj1037 Direct Visibility 题解 (宽搜)

    http://poj.org/problem?id=1399 http://acm.hit.edu.cn/hoj/problem/view?id=1037 题意: 在一个最多200*200的minec ...

  8. 网络流n题 题解

    学会了网络流,就经常闲的没事儿刷网络流--于是乎来一发题解. 1. COGS2093 花园的守护之神 题意:给定一个带权无向图,问至少删除多少条边才能使得s-t最短路的长度变长. 用Dijkstra或 ...

  9. CF100965C题解..

    求方程 \[ \begin{array}\\ \sum_{i=1}^n x_i & \equiv & a_1 \pmod{p} \\ \sum_{i=1}^n x_i^2 & ...

随机推荐

  1. 如何找到mysql磁盘地址

    show global variables like "%datadir%"; 我的位置: C:\ProgramData\MySQL\MySQL Server 5.5\Data\

  2. CSS 基础 - Cascade and Inheritance

    CSS 基础 - Cascade and Inheritance MDN学习笔记:https://developer.mozilla.org/zh-CN/docs/Learn/CSS/Building ...

  3. 数据仓库分层中的ODS、DWD、DWS

    1.数据仓库DW 1.1简介 Data warehouse(可简写为DW或者DWH)数据仓库,是在数据库已经大量存在的情况下,为了进一步挖掘数据资源.为了决策需要而产生的,它是一整套包括了etl.调度 ...

  4. 【转】群体研究套路:开心果denovo+重测序+转录组+群体进化+选择位点

    转自公众号Eric生信小班.学习群体遗传套路 中科院昆明动物园吴东东研究团队联合国外研究团队2019年在Genome Biology发表题为Whole genomes and transcriptom ...

  5. 62-Binary Tree Level Order Traversal

    Binary Tree Level Order Traversal My Submissions QuestionEditorial Solution Total Accepted: 102531 T ...

  6. 暂时lvs

    负载均衡集群是 load balance 集群的简写,翻译成中文就是负载均衡集群.常用的负载均衡开源软件有nginx.lvs.haproxy,商业的硬件负载均衡设备F5.Netscale.这里主要是学 ...

  7. Oracle-trunc函数、round 函数、ceil函数和floor函数---处理数字函数使用

    0.round函数 按照指定小数位数进行四舍五入运算. SELECT ROUND( number, [ decimal_places ] ) FROM DUAL #number : 待处理数值  de ...

  8. python爬虫采集

    python爬虫采集 最近有个项目需要采集一些网站网页,以前都是用php来做,但现在十分流行用python做采集,研究了一些做一下记录. 采集数据的根本是要获取一个网页的内容,再根据内容筛选出需要的数 ...

  9. Docker网络设置及文件挂载

    网络设置–net=bridge- 默认选项,用网桥的方式来连接docker容器.–net=host- docker跳过配置容器的独立网络栈.–net=container:NAME_or_ID- 告诉d ...

  10. HDFS【Java API操作】

    通过java的api对hdfs的资源进行操作 代码:上传.下载.删除.移动/修改.文件详情.判断目录or文件.IO流操作上传/下载 package com.atguigu.hdfsdemo; impo ...