SP8374 PARKET1 - PARKET 题解
Content
有一个 \(l\times w\) 大小的网格,其四周均被染成了红色,其余部分是棕色,已知红色网格与棕色网格的数量,求 \(l\) 与 \(w\) 的值。
Solution
接下来给各位上演一波大 力 解 方 程。
我们设红色格子的个数是 \(r\),棕色格子的个数是 \(b\)。那么我们通过题目给出的图可以看出棕色格子所占的矩形长 \(l-2\),宽 \(w-2\)。那么可以得到等式 \((l-2)(w-2)=b\)。
又由于我们知道网格只被涂成了红色和棕色,因此我们又得到了一个等式 \(lw=b+r\)。
由此我们得到了一个方程组:
\]
我们发现这个 \((1)\) 式不做变换的话不好进行后面的计算,因此我们考虑把 \((1)\) 式拆开:
\]
然后我们发现,\(lw\) 既可以表示成 \(b+r\),也可以表示成 \(b+2(l+w)-4\),因此我们又得到了一个等式:
\]
我们再一起看一下这两个等式:
\]
我们发现,这就是一个典型的韦达定理,即 \(x_1+x_2=-\dfrac ba\),\(x_1x_2=\dfrac ca\),于是我们不妨将 \(l,w\) 看作是一个一元二次方程的两个根,于是我们就可以得到这个一元二次方程 \(x^2-\dfrac{r+4}2+r+b=0\)。
又由于题目告诉我们,\(l,w\) 保证有解,于是我们解这个方程,得:
\]
\]
又由于我们的 \(r,b\) 都是正整数,因此我们可以推出 \(x_1>x_2\),因此不需要再去比较交换什么的就可以直接输出。
Code
因为代码实在是太简单,就给各位自己写吧qwq。
SP8374 PARKET1 - PARKET 题解的更多相关文章
- 2016 华南师大ACM校赛 SCNUCPC 非官方题解
我要举报本次校赛出题人的消极出题!!! 官方题解请戳:http://3.scnuacm2015.sinaapp.com/?p=89(其实就是一堆代码没有题解) A. 树链剖分数据结构板题 题目大意:我 ...
- noip2016十连测题解
以下代码为了阅读方便,省去以下头文件: #include <iostream> #include <stdio.h> #include <math.h> #incl ...
- BZOJ-2561-最小生成树 题解(最小割)
2561: 最小生成树(题解) Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 1628 Solved: 786 传送门:http://www.lyd ...
- Codeforces Round #353 (Div. 2) ABCDE 题解 python
Problems # Name A Infinite Sequence standard input/output 1 s, 256 MB x3509 B Restoring P ...
- 哈尔滨理工大学ACM全国邀请赛(网络同步赛)题解
题目链接 提交连接:http://acm-software.hrbust.edu.cn/problemset.php?page=5 1470-1482 只做出来四道比较水的题目,还需要加强中等题的训练 ...
- 2016ACM青岛区域赛题解
A.Relic Discovery_hdu5982 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Jav ...
- poj1399 hoj1037 Direct Visibility 题解 (宽搜)
http://poj.org/problem?id=1399 http://acm.hit.edu.cn/hoj/problem/view?id=1037 题意: 在一个最多200*200的minec ...
- 网络流n题 题解
学会了网络流,就经常闲的没事儿刷网络流--于是乎来一发题解. 1. COGS2093 花园的守护之神 题意:给定一个带权无向图,问至少删除多少条边才能使得s-t最短路的长度变长. 用Dijkstra或 ...
- CF100965C题解..
求方程 \[ \begin{array}\\ \sum_{i=1}^n x_i & \equiv & a_1 \pmod{p} \\ \sum_{i=1}^n x_i^2 & ...
随机推荐
- redis序列化和反序列化的操作-(以前咋操作我都忘记了)
//拿到数据,redis如果有则将现在有的传进去,如果没有则获取接口 ExWritPropertyVo ExWritPropertyVo = new ExWritPropertyVo(); ExWri ...
- char数据可以放入int[]中会自动转换
int[] ary ={'b','c','a','d','e','f'};System.out.println(ary[0]);//98String str = new String(ary, 2, ...
- layui页面操作,点击一个添加页面,跳转有确定,然后点击确定后将选择的几个数据返回前一个页面获取值,然后ajax请求后台
custUserIndex.html [添加页面代码] <!DOCTYPE html> <html> <head> <meta charset="u ...
- P7045 「MCOI-03」金牌
考虑维护一个队列. 先插入\(a_1 = 0\) 依次往后考虑,如果和队列里相斥,则我们把队列一个和他捆绑起来. 如果队列空,则加入该颜色. 最后考虑往队列里插入改颜色. 总共为\(2 * (n - ...
- freeftpd的使用教程
一.Freeftpd连接管理-黑名单.白名单 Freeftpd支持黑名单或白名单限制连接的客户端.同时只能使用其中之一.服务器通过客户端IP地址来判断是否允许其连接.其设置界面如下: 1.选择要使用白 ...
- 什么是DDL,DML,DCL
转载自 https://www.2cto.com/database/201610/555167.html DML.DDL.DCL区别 . 总体解释: DML(data manipulation la ...
- 非标准的xml解析器的C++实现:一、思考基本数据结构的设计
前言: 我在C++项目中使用xml作为本地简易数据管理,到目前为止有5年时间了,从最初的全文搜索标签首尾,直到目前项目中实际运用的类库细致到已经基本符合w3c标准,我一共写过3次解析器,我自己并没有多 ...
- 使用clion阅读eos源码
配置mingw 安装clion 从github克隆源码 使用clion open打开 在cmake上使用boost: sudo apt-get install libboost-all-dev
- 监测linux系统负载与CPU、内存、硬盘、用户数的shell脚本
本节主要内容: 利用Shell脚本来监控Linux系统的负载.CPU.内存.硬盘.用户登录数. 一.linux系统告警邮件脚本 # vim /scripts/sys-warning.sh #!/bin ...
- Java Spring 自定义事件监听
ApplicationContext 事件 定义一个context的起动监听事件 import org.springframework.context.ApplicationListener; imp ...