自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 广州两天游

今年的noip终于也过去了,第一年来参加noip,不写点什么好像还是不太好 按照惯例,还是应该先讲讲本蒟蒻的oi史,虽然也几乎什么都没有 首先,为什么会学信息学呢?原因太多啦。。。比如什么从小对这方面有些兴趣什么的,当然想逃晚修去机房吹空调也是一个重要的原因。。。。 然后,我学信息学应该来说是高一才开始的(开学几周的时候突然出现个什么信息班招生,然后就去考试,莫名其妙就混进去了······)

2016-11-20 21:40:03 287 1

原创 模拟赛精题

#21 T3:mst  题意:给n(1~100000)个点,m条边(n-1 求解:对于每一条边,求出每一条边是否在所有最小生成树上(any),或者至少在一颗最小生成树上(at least one),或者不在任何一棵树上(none) 思路:将权值排序,对所有权值相同的边一起操作。如果两条边在同一个连通分量,该边为none。 构造一个新图G1,将所有边对应的连通分量连边,然后求桥,所有的桥即为

2016-10-27 20:20:38 188

原创 关于多维最远Manhattan距离

题目:给出n(1 #include #include inline int read(){ int t=getchar(), p=0, f=1; while(t'9') { if(t=='-') f=-1; t=getchar(); } while(t>='0'&&t<='9') p=p*10+t-48, t=getchar(); return p*f; } int a[1

2016-10-14 20:13:51 406

原创 一道状压

#include #include const int mod=1000003; int i, j, n, k, K, len, po[20]; int fit[30][60], f[60][40000]; char c[20][60]; inline int read(){ int t=getchar(), p=0; while(t'9') t=getchar(); while(t>='0

2016-10-13 20:43:55 165

原创 51nod 1102

以下先贴代码 #include #include using namespace std; inline int read(){ int t=getchar(), p=0; while(t'9') t=getchar(); while(t>='0'&&t<='9') p=p*10+t-48, t=getchar(); return p; } inline void ma(long l

2016-09-27 18:35:07 215

原创 炮兵阵地

三维的dp[i][a][b],表示第i行,前一行状态为a,再前一行的状态为b,用二进制表是状态如10010表示第一和第四个位置有阵地,然后预处理出每一种状态的炮兵数量。 每一行读取完后就预处理该行所有可能的状态, x&x  注意第一行和第二行先进行dp,再处理后面几行。 #include #include #include #define N 10 using namespace std;

2016-08-14 16:01:19 326

原创 noip2015普及组第四题

不会写全动归,只能写半动归半暴搜。主要DFS枚举行数,dp目前矩阵,类似求最大和,预处理好每一列自身的值以及各行间的值就可以了。 #include #include #include #include #define maxn 214748364 using namespace std; int n, m, r, c, ans=maxn; int v[18], a[18][18], s1[18]

2016-08-13 14:22:32 290

原创 noip2011普及组第四题

要用栈写比较方便,速度也还挺快O(n),主要是每遇到一个非括号符号就插两个数进数字栈里,遇到符号就从优先级入手,比如匹配到加号然后栈里面有乘号就要先解决栈里面的乘号,直到遇到‘(’符号为止。 有一个小技巧就是开头先再字符串后面加一个‘)’,再把左括号加入栈内。等下就不用去清栈,可以保证运行完后栈必空。 #include #include #include #define mod 10007 #

2016-08-12 14:06:29 658

原创 codevs_5037 线段树练习4加强版

#include #include #define mod 800 using namespace std; int n, m, k, l, r, x; char s[10]; int a[200050], v[251][200050], seg[251]; void read(int &xx) { char tt=getchar();int sx=1; while((tt'9')&&tt!=

2016-07-05 20:23:35 678 1

原创 codevs_4927 线段树练习5

#include #include #include #define ll long long using namespace std; struct h{ int l, r; ll v, vset, vadd, maxn, minn; }tree[270000]; int n, q, a, b, pd[270000]; ll x; char s[10]; void weihu(int d)

2016-07-05 13:55:56 344

原创 树形dp——没有上司的舞会

#include #include #include #define minn -99999999 using namespace std; struct hh{ int num; int a[6011]; }; int n, wi[6011], dp[2][6011]; hh s[6011]; int f(int a, int b) { if(dp[a][b]) return dp[a]

2016-07-02 18:27:27 234

原创 最小生成树

贪心 #include #include using namespace std; struct hh{ int a, b; long long c; }tree[111111]; int n, m, fa[111111]; long long ans=0; int cmp(hh x, hh y) { return x.c<y.c; } int find(int x) { if(x!=f

2016-07-02 18:23:13 197

原创 线段树练习4

#include #include using namespace std; struct h{ int l, r, x[8], val; }tree[270000]; int a, b, m; char c[22]; void built(int d, int l, int r) { tree[d].l=l; tree[d].r=r; tree[d].val=0; for(int i=

2016-07-02 18:13:23 164

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除