摘要:
#include #include #include using namespace std; int mem[4][4];//用于储存翻转次数,如果是偶数,则相当于没有翻转 int main(){ char ch; for (int x = 0; x<4; x++){//按sample的顺序,x代表纵行,y是横列 for (int y = 0; y <= 4;... 阅读全文
摘要:
#include #include #include using namespace std; const int maxn = 65535; int vis[maxn+10]; int f(int sum, int i){ sum ^= 1 = 0) sum ^= 1 ss; ss.push(sum); whil... 阅读全文
摘要:
贪心策略:就是s1+s2>s2+s1这个贪心策略非常容易发现。 阅读全文
摘要:
思路:贪心策略,对每个区间进行排序,然后先总的全区间为(0,0),然后,对区间不断的更新操作。每次只要去相对上的最大区间即可。 阅读全文
摘要:
思路: 先把这些矩形统一 一下,让最长边向下,然后按大小放好。 这样,我们就可以来构建DAG图形, 令,被包含的矩形a与包含的矩形b看成a一一>b的路线,这样就形成了这样的图形: ,我们一定知道最小矩形一定是不能包含其他矩形的(因为没有矩形比最小矩形还小),同时,知道最大矩形一定不能被包含。(因为没 阅读全文
摘要:
思路:就是使用二维前缀和的模板: 先放模板: 阅读全文
摘要:
思路:就是二分派的体积,但是要处理一下高精度。 阅读全文
摘要:
思路:二分,就是在不超过b的预算下,使得品质的最小值最大化。关键还是判断函数吧。 假设答案为x,判断函数,就是每一个种类的配件的品质最基本的品质要大于x,然后找出最小的值。这样的配件品质之和的价格要小于b元。 则表明x是答案之一。但是,不一定是最优答案。最后答案就要看二分的方向了。 阅读全文
摘要:
这套题我只写了a, b, c。。 对不起,是我太菜了。 A:思路:就是直接简化为一个矩阵按照特定的步骤从一个顶角走到与之对应的对角线上的顶角。如图所示。 解释一下特定的步骤,就像马走日,象走田一样。你的步骤只能走(x-a, y-b), (x+a, y-b), (x-a, y+b), (x+a, y+ 阅读全文
摘要:
a题:题意就是问,3个数字差多少可以构成三角形 思路:两边之和大于第三遍 b题:就是给出a的值。求出这个解的个数。 思路:比如给你a=5,则a=101, 则 x= 000, 001, 100, 101 为什么这样呢?因为只有没产生减法时的借1的情况的话,都是可以的。emmm,也就是说统计一下二进制中 阅读全文