07 2017 档案

摘要:#include using namespace std; int n,m,i,num[100001],t[200001],l,r;//num:原数组;t:树状数组 int lowbit(int x) { return x&(-x); //右起第一个1的位置为第k个 返回值则为2^(k-1) } void update(int x,int p)//更新第x 的值 { whil... 阅读全文
posted @ 2017-07-24 00:16 Aragaki 阅读(102) 评论(0) 推荐(0)
摘要:long long quick_pow(int a,int n) { long long result; if(n == 1) return a; if(!n) return 1; long long mid = quick_pow(a,n/2); if(n%2) result = mid*mid%modx*a%modx... 阅读全文
posted @ 2017-07-23 23:25 Aragaki 阅读(88) 评论(0) 推荐(0)
摘要:A:水 #include <bits/stdc++.h> #include <cstring> #include <iostream> #include <algorithm> #define EPS 1.0e-8 #define PI acos(-1.0) #define INF 30000000 阅读全文
posted @ 2017-07-20 11:45 Aragaki 阅读(120) 评论(0) 推荐(0)
摘要:先明白 基数排序 基数排序(radix sort)属于“分配式排序”(distribution sort),又称“桶子法”(bucket sort)或bin sort,顾名思义,它是透过键值的部份资讯,将要排序的元素分配至某些“桶”中,藉以达到排序的作用,基数排序法是属于稳定性的排序,其时间复杂度为 阅读全文
posted @ 2017-07-19 00:05 Aragaki 阅读(109) 评论(0) 推荐(0)
摘要:int BiSearch(int len, int w) { int left = 0, right = len - 1; int mid; while (left <= right) { mid = left + (right-left)/2; if (bz[mid] > w) right = m 阅读全文
posted @ 2017-07-18 22:47 Aragaki 阅读(146) 评论(0) 推荐(0)
摘要:#include <iostream> #include <queue> #include <vector> using namespace std; const int N=405; struct rec { int v,w; }; vector<rec> edge[N*N]; int n,st, 阅读全文
posted @ 2017-07-18 22:41 Aragaki 阅读(257) 评论(2) 推荐(0)
摘要:A:树形DP 给出一棵树,但是它的边是有向边,选择一个城市,问最少调整多少条边的方向能使一个选中城市可以到达所有的点,输出最小的调整的边数,和对应的点 要改变的边的权值为1,不需要改变的边的权值为0, 两次dfs 第一次算出以1点为根节点到所有点要改变的边数,第二次以1为根节点向下遍历节点 算出每一 阅读全文
posted @ 2017-07-17 22:32 Aragaki 阅读(129) 评论(0) 推荐(0)
摘要:A: B:按题意直接暴力找符合题意的数的个数 #include <bits/stdc++.h> #include <cstring> #include <iostream> #include <algorithm> #define foror(i,a,b) for(i=a;i<b;i++) #def 阅读全文
posted @ 2017-07-17 22:20 Aragaki 阅读(178) 评论(0) 推荐(0)
摘要:B:读懂题意模拟 #include <bits/stdc++.h> #include <cstring> #include <iostream> #include <algorithm> #define foror(i,a,b) for(i=a;i<b;i++) #define foror2(i,a 阅读全文
posted @ 2017-07-17 22:12 Aragaki 阅读(188) 评论(0) 推荐(0)
摘要:A 略 B 略 C: 先对Ai数列预处理前缀和 然后把Bi的每个都加一次 最终得到的结果为ans[sum]++; 最后如果有一个ans[sum]>=k即满足所有K个条件就输出(注意!!前缀和要进行unique操作!!!因为可能会有+1 -1 +1这种出现 #include <bits/stdc++. 阅读全文
posted @ 2017-07-17 11:28 Aragaki 阅读(162) 评论(0) 推荐(0)
摘要:sstream ss()自动去除空格 例: 输出是1\n2\n3\n4\n; unique的作用是“去掉”容器中相邻元素的重复元素 它实质上是一个伪去除 它会把重复的元素添加到容器末尾 而返回值是去重之后的尾地址 阅读全文
posted @ 2017-07-14 11:27 Aragaki 阅读(174) 评论(0) 推荐(0)
摘要:A:水.看0多还是1多就行 B:模拟二进制运算 ,,卡了好久 不应该 #include <bits/stdc++.h> #include <cstring> #include <iostream> #include <algorithm> #define foror(i,a,b) for(i=a;i 阅读全文
posted @ 2017-07-13 20:28 Aragaki 阅读(188) 评论(0) 推荐(0)
摘要:状态比较容易表示,转移方程比较好想,问题比较基本常见 递推、背包、LIS(最长递增序列),LCS(最长公共子序列) HDU 2048 数塔 由上往下推 状态数太多(100!) 可以由下往上推: dp[i][j]=max(dp[i+1][j],dp[i+1][j+1])+dp[i][j]) 储存的话就 阅读全文
posted @ 2017-07-13 11:53 Aragaki 阅读(175) 评论(0) 推荐(0)
摘要:D:找到两个数 一个是另一个的整数倍(1也算) 因为N是600000 调和级数为ln(n+1) 算一下 可以直接爆 #include <bits/stdc++.h> #include <cstring> #include <iostream> #include <algorithm> #define 阅读全文
posted @ 2017-07-12 22:46 Aragaki 阅读(235) 评论(0) 推荐(0)
摘要:B:分析序列 构造树(优先队列) #include <bits/stdc++.h> #include <cstring> #include <iostream> #include <algorithm> #define foror(i,a,b) for(i=a;i<b;i++) #define fo 阅读全文
posted @ 2017-07-12 22:10 Aragaki 阅读(175) 评论(0) 推荐(0)
摘要:A:水. B:注意min(n,m)>=max(xmax-xmin+1,ymax-ymin+1)就行 C:刚开始想用待输入字符串是否是已经确定字符串的子串做(map<int,string>) 如果是就跳过 不是就把超过的部分赋值 这样就可以避免重复赋值 但总觉得不是还不是最优 后来看到有人用并查集做觉 阅读全文
posted @ 2017-07-12 22:04 Aragaki 阅读(129) 评论(0) 推荐(0)
摘要:基础博弈的小结:http://blog.csdn.net/acm_cxlove/article/details/7854530 经典翻硬币游戏小结:http://blog.csdn.net/acm_cxlove/article/details/7854534 经典的删边游戏小结:http://blo 阅读全文
posted @ 2017-07-11 10:41 Aragaki 阅读(243) 评论(0) 推荐(0)
摘要:Game theory初步 游戏1l 有两个游戏者:A和B。l 有21颗石子。l 两人轮流取走石子,每次可取1、2或3颗。l A先取。l 取走最后一颗石子的人获胜,即没有石子可取的人算输。如果剩下1、2或3颗石子,那么接下来取的人就能获胜;如果剩下4颗,那么无论接下来的人怎么取,都会出现前面这种情况 阅读全文
posted @ 2017-07-11 10:12 Aragaki 阅读(354) 评论(0) 推荐(0)
摘要:博弈论(一):Nim游戏 重点结论:对于一个Nim游戏的局面(a1,a2,...,an),它是P-position当且仅当a1^a2^...^an=0,其中^表示位异或(xor)运算。Nim游戏是博弈论中最经典的模型(之一?),它又有着十分简单的规则和无比优美的结论,由这个游戏开始了解博弈论恐怕是最 阅读全文
posted @ 2017-07-11 09:38 Aragaki 阅读(170) 评论(0) 推荐(0)
摘要:A:给一个包含字母 加号 括号的序列 要求你删除多余的括号然后输出 (待改) #include <bits/stdc++.h> #include <cstring> #include <iostream> #include <algorithm> #define foror(i,a,b) for(i 阅读全文
posted @ 2017-07-11 09:37 Aragaki 阅读(134) 评论(0) 推荐(0)
摘要:2-SAT POJ3683 操作树 仙人掌 HDU3594 平衡树 916D 可持久化Trie https://www.cnblogs.com/jszkc/p/7309468.html http://www.cnblogs.com/joyouth/p/5604618.html https://www 阅读全文
posted @ 2017-07-10 14:26 Aragaki 阅读(166) 评论(0) 推荐(0)
摘要:A:先分2种情况 第一种为奇数与偶数都不为0 第二种为有奇数或者偶数为0 第一种答案直接就是1<<(n-1) 第二种当奇数为0且P==1时不可能有奇数答案为0 P==0时 答案为C(n,0)一直加到C(n,n)答案为1<<n; 还有就是n==1时单独写出来就行 B:总共有N个格子 N-2个空格 初始 阅读全文
posted @ 2017-07-10 10:46 Aragaki 阅读(93) 评论(0) 推荐(0)
摘要:A:不管有没有负数 一顿操作之后肯定只有正数 又因为A=A-B 所以最大值是一直在减小的 所以一定有结果 B:..一开始以为求min操作数 WA了2发 直接求所有数的GCD如果所有数的GCD都不是1的话就无解 有解就无脑扫2次就好了 C:给你一个char正方形矩阵 要求a[i][j]四个正方形对称轴 阅读全文
posted @ 2017-07-09 23:23 Aragaki 阅读(180) 评论(0) 推荐(0)
摘要:题意:给定A,B,问[A,B]里取任意个数按位或,结果有多少种。 思路:这题需要找出一个分界点,即找到最高位的B是1,A是0的位置x(最低位从0开始),那么对于所有OR的结果,x处要么是1要么是0,x是0有多少种呢?这里就需要从[A,1<<x)里挑选数进行OR,即有(1<<x)-A种,因为A到(1< 阅读全文
posted @ 2017-07-09 11:57 Aragaki 阅读(113) 评论(0) 推荐(0)
摘要:题意:n*m矩阵,n,m<=2e3,矩阵中的1能走到相邻4个1上,0代表障碍,若两个1联通 则只有一条路径 q个询问,q<=2e5,每次询问一个子矩阵中有多少个连通分量?同一个连通分量中任意两点只有一条路径,于是对相邻的每个1连接一条边,每一个连通分量显然都为一颗树若子矩形有k个联通分量,因为每个联 阅读全文
posted @ 2017-07-09 11:38 Aragaki 阅读(172) 评论(0) 推荐(0)
摘要:在引入右值引用,转移构造函数,转移复制运算符之前,通常使用push_back()向容器中加入一个右值元素(临时对象)的时候,首先会调用构造函数构造这个临时对象,然后需要调用拷贝构造函数将这个临时对象放入容器中。原来的临时变量释放。这样造成的问题是临时变量申请的资源就浪费。 引入了右值引用,转移构造函 阅读全文
posted @ 2017-07-09 10:07 Aragaki 阅读(362) 评论(0) 推荐(0)
摘要:c++中for(auto count : counts) 阅读全文
posted @ 2017-07-09 09:53 Aragaki 阅读(303) 评论(0) 推荐(0)
只有注册用户登录后才能阅读该文。
posted @ 2017-07-08 21:53 Aragaki 阅读(6) 评论(0) 推荐(0)
摘要:给你N(1<=N<=100)个区间 l-r 求最大的子区间大小使每个区间都有这个子区间且覆盖不重复 做法 输入的时候纪录区间最大值 然后二分求答案 阅读全文
posted @ 2017-07-08 00:43 Aragaki 阅读(179) 评论(0) 推荐(0)
摘要:有一个M*N的矩阵,有一个会自动清洁的机器人,这个机器人会按照设定好的程序来打扫卫生,如果当前方向前面可以行走,那么直接走,如果不可以走那么会向右转动90度,然后回归上一步判断。求机器人最多能打扫的面积是多少 一开始认为是走到之前清扫过的就停止搜索 后来知道是走到一个四个方向都走过的点才停止搜索 阅读全文
posted @ 2017-07-07 23:09 Aragaki 阅读(202) 评论(0) 推荐(0)
只有注册用户登录后才能阅读该文。
posted @ 2017-07-06 23:57 Aragaki 阅读(5) 评论(0) 推荐(0)
只有注册用户登录后才能阅读该文。
posted @ 2017-07-06 20:03 Aragaki 阅读(6) 评论(0) 推荐(0)
只有注册用户登录后才能阅读该文。
posted @ 2017-07-06 09:11 Aragaki 阅读(6) 评论(0) 推荐(0)
只有注册用户登录后才能阅读该文。
posted @ 2017-07-06 08:23 Aragaki 阅读(7) 评论(0) 推荐(0)
只有注册用户登录后才能阅读该文。
posted @ 2017-07-01 14:26 Aragaki 阅读(0) 评论(0) 推荐(0)
只有注册用户登录后才能阅读该文。
posted @ 2017-07-01 14:14 Aragaki 阅读(3) 评论(0) 推荐(0)