- 博客(6)
- 资源 (2)
- 收藏
- 关注
原创 codeforce678E
#include <iostream>#include <algorithm>#include <iomanip>#include <cstdio>using namespace std;#define MAX 18double d[1<<MAX][MAX];//1<<MAX太大,不能再main函数里面声明//这里1<<MAX是指一个活着的人的集合,0为死,1为生,之后利用位运算进行相
2017-07-28 16:21:13 336
转载 动态规划之状态压缩dp入门
以下摘抄自qxAi的动态规划自状态压缩dp入门 状态压缩动态规划(简称状压dp)是一类典型的动态规划,通常使用在小规模求解中,因为复杂度是指数级别。 状压dp经常用二进制表示相关状态,首先介绍位运算相关的知识。 1.’&’符号,x&y,会将两个十进制数在二进制下进行与运算,然后返回其十进制下的值。例如3(0011)&2(0010)=2(0010)。 2.’|’符号,x|y,会将两个十进制数在
2017-07-27 13:05:16 505
原创 发现规律&&codeforce 590A
这个题没有用到什么定理函数之类的,有的只是要学会发现规律,题目最直观的解法很有可能会超时,从另一个角度来说,这也不利于我们的训练。 通过不断地尝试,我们可以发现: 1、类似于010101,最后是000111,也就是说前一半的值等于第一个,后一半的值等于最后一个 2、类似于01010,即首尾相同,那么最后结果是00000;而10101,结果是11111 3、我们在这里把这样的串称为重要字串,可
2017-07-24 21:32:36 265
原创 快速幂&&codeforce 678D
#include <iostream>using namespace std;#define p 1000000007#define ll long longll f(ll a,ll n,ll m)//快速幂计算a的n次方模m(由于数字较大,通常会要求求出余数){ ll res=1; while(n) { if(n&1) res=a*res%m;
2017-07-24 15:53:42 166
原创 DFS&&codeforce 598d
#include <iostream>using namespace std;char room[1010][1010];int M[1010][1010];// M不仅表示这个(x,y)属于第几个由若干个联通的房间组成的块,也表示空房间是否遍历过int ans,id=0;//ans是一个临时变量,储存每个块可以看到的画的数目;id表示块的序号int num[1010*1010];//nu
2017-07-21 17:46:14 264
原创 第一次写博客&&ACM
第一次写博客,把昨天用记事本写的琐碎的东西复制过来: 1.c++中,long long类型的范围为正负2的64次方-1.共计18位数字 可以用%I64d(printf)也可以用cout直接输出 2.pow为double型,记得强转为long long类型,头文件为math.h 3.5>>1=2;4>>1=2;1>>1=0; 4.n>>=1等价于n/=2; 5.乘方取模问题:二分&&同余定
2017-07-20 21:18:31 316
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人