这道题考场上卡了文文相当长的时间,所以写个题解泄泄愤QAQ 题意:给你$a$块红瓷砖,$b$块白瓷砖,在一个无限大的地上拼装,要求整体是一个矩形,并且至少有一种颜色是一个矩形,求最小周长. 题解: 首先,我们知道,当面积一定时,矩形的形状越接近正方形,周长越小. 很显然的想到,我们可以给总数$tot$=$a$+$b$开个方,然后去找一个最接近的矩形出来. 但事实上这个方法是错误的:你无法保证至少有一种颜色的是一个矩形. 我们首先,要分情况讨论,让$a$是矩形还是让$b$是矩形.当然,我们讨论每个…
F. Multicolored Markers 题目大意: 给你 a个红块 b个蓝块 拼成一个实心矩形,并且要求红块或者蓝块自成一个矩形,问形成的这个矩形最小的周长是多少. #include <iostream> #include <cstdio> #include <algorithm> #include <queue> #include <stack> #include <bitset> #include <vector&g…
这道题其实难度应该小于紫题...除了一点小特判以外没什么难度...\(\leq50\)行代码即可\(AC\)此题 题目大意:给定两个数\(a,b(1\leq a,b\leq 10^{14})\)分别表示红色方格个数和蓝色方格个数,求这\(a\)个红色方格和\(b\)个蓝色方格构成的矩形周长的最小值,且满足在所构成的矩形中至少有一种颜色的所有方块也能构成一个矩形,数据保证存在至少一种合法的染色方案. 这道题本质是数学题,根据矩形周长一定时长与宽的差越小矩形面积越大可以反推出矩形面积一定时长与宽的差…
Day0 今天早上三点半才睡着,五点起床,前往省城郑州.与省实验常老师汇合,坐上高铁,下午三点半多才到广州二中. 下午随便找了一个教室进去敲一敲代码,发现自己越来越菜了. 和一大堆网上的dalao面基了呢!开心! 晚上开幕式,节目很好看,讲话很 $\color {red} {风趣} $. Day1 早上的饭好评!可以说是非常好吃了d(`・∀・)b 有面包鸡蛋和牛奶喔 _(:3 」∠ )_ 上午选择了第二教室这个地方QAQ,没能去参加松松松的小黄鸭宣传仪式 Σ( ° △ °).讲了生成函数和他那一…
Day-1 本段更新于 2018年11月8日23:26:44 今天还在机房里面,无所事事吧.上午睡了一上午,出去理了一下发,花了20块钱 QAQ. 下午来到机房,复习了一下exgcd的东西. 发现自己网络流好久没写了,洛谷群里又在讨论网络流,稍微有点慌QAQ 以为自己什么都准备好了,临近NOIp才发现自己什么都没准备好.KMP也好久没摸了,惨惨啊. 爆零预定 然后晚上和大家交流了一下注意事项(其实没有注意事项)以及把模拟赛的坑填了一下. Day 0 本段更新于 2018年11月9日17:27:1…
题解 我们考虑将棋盘扩大一倍,这样相当于取膜.然后,我们只要对x,y,的位置分类讨论,做四次crt就行.具体细节看文文代码. #include<cstdio> #include<algorithm> typedef long long ll; const ll inf = 1000000000000LL; int a[10],m[10]; inline ll exgcd(ll a,ll b,ll &x,ll &y) { if(b==0) { x=1;y=0; ret…
. 二进制状态压缩动态规划 对于某些情况,如果题目中所给的限制数目比较小,我们可以尝试状态压缩动态规划.例如,题目中给出数据范围\(n<=20\),这个一般情况下是一个状压DP的提示. 状态压缩,顾名思义,要把每种状态压缩起来.一个经典的问题是洛谷P1171,也就是著名的货郎担问题,它是一个NPC难题,目前不存在多项式算法.当题目中\(n\)的范围比较小时,我们可以考虑使用状态压缩动态规划(状压DP)来解决.(注:本文出现的"状压DP"若无特殊说明,均指状态压缩动态规划) 我们用…
CF-1029F 题意: a,b个小正方形构造一个矩形,大小为(a+b),并且要求其中要么a个小正方形是矩形,要么b个小正方形是矩形. 思路: 之前在想要分a,b是否为奇数讨论,后来发现根本不需要.只用枚举(a+b)大小的矩形的边长,并暴力判断(注意暴力判断的顺序)能否成立,更新答案. #include <algorithm> #include <iterator> #include <iostream> #include <cstring> #includ…
思维:思维就是将大的矩形放在小矩形里面,让大矩形的宽和长尽量靠近. 很容易得到 (a+b)% i = 0 的话, 保证了大矩形的形成,同时里面表示了两种情况:1, a % i =0, b % i=0;  2, (a%i  +  b % i) % i =0 当然,第一种情况是第二种的特殊情况,但是,我还是想把它写出来, 同时, 这个 i 必须大于 a和 b共同的 第一个 因子(不必是共同因子,第一的顺序是只从大到小的顺序中第一次大于等于)至于,为什么自己可以画画图,就很明白了.当然,要证明的话,直…
题解 显然可以把每个观测点,认为是x轴上的一段区间.问题就转换为了:对于x轴上的若干个区间,选取尽可能少的点,使得所有区间都有至少一个点. 这是一个相当经典的贪心问题. 代码如下: #include<cstdio> #include<cstring> #include<algorithm> #include<cmath> const int maxn = 110; struct qwq { int vis; double x,y; const bool op…