自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 欢迎访问我的博客

#include<cstdio>#define nickname xyy#define blog csdn xyyqwq#define qq 1120729850#define Orz stdusing namespace Orz;int main (){ printf("欢迎来到我的博客\n"); printf("本blog是一开始用于鄙人OI冲刺建立的博客,后用于

2016-11-25 20:05:37 235

原创 NOIP主要考查范围

基本数据结构栈队列数组优先队列中级数据结构堆(大根堆,小根堆)并查集和带权并查集哈希表高级数据结构 (可选学)树状数组线段树各种其他树字符串和相关内容1.KMP 2.各种操作函数图论(重点)最小生成树最短路次短路,K短路图的连通二分图匹配拓扑排序树 (可选学)树上倍增,LCA数论欧几里得,扩展欧几里得中国剩余定理更相减损术排列组合素数筛法快速幂

2016-11-24 21:52:06 754

原创 再见,OI

你好,NOIP2015年9月1日 正式成为了福建省莆田一中的一名高一成员 后来学校搞了选修 大家都很激动 因为自己的兴趣和特长能够得到发挥了(或者说能逃课或者看好多电影) 发现选修提供的选项中有好几项是竞赛 物竞 化竞 数竞 生竞什么的 数竞 觉得自己没那智商。 物竞 觉得自己没那智商。 生竞 觉得自己没那智商。 化竞 觉得自己没那智商。 发现有个计算机奥赛(其实仍然没那智商

2016-11-22 21:50:08 1029 1

原创 博客?

昏昏沉沉地毕业了。 回到这个梦开始和结束的地方。看到自己写过的那些文字,还是挺怀念的,有些细节都记不清了。 最后还是托OI的福自主招生上了福州大学。高考莫名其妙地失利了。有什么好总结的呢,数学真的是没想到自己会发挥成那样子,理综更是一塌糊涂。我这辈子是不是都不会与这些东西结缘呢?语文啊语文啊,英语啊英语,为什么我压根不去念的这些科目反而总是我的救命稻草呢? 计算机可能也是我的宿命吧。注定成为...

2018-07-22 12:49:52 179

原创 登峰杯第二届全国中学生数学建模大赛参赛感想

比赛纪实这是莆田一中第一次参加该项比赛,参赛队伍一共有五个,三个高一队伍和分别有一个的高二高三队伍。 2016年12月15日晚,转移电脑,转移床铺,转移网线。 16日早晨8:00,考题正式发布。 中午,开始第一次调研,在校门口南面300米处红绿灯进行了三十分钟的车流量调查。 下午堕落。 16日晚,tjj对众人的态度感到不满,于是开始自主研究模型的建立。成功提出了一个基本设想:在针对形似双十

2016-12-21 15:57:14 2584

原创 P1009 立体图

思路:根据题意模拟。#include <iostream>#include <fstream>#include <vector>using namespace std; char board[10000][10000]; int maxx, maxy, minx, miny; void print_cube(int posx, int posy) {

2016-11-25 20:51:49 341

原创 最小生成树模板

这里使用朴素kruskal算法通过并查集实现这里我没有使用动态数组进行存图 因为在枚举每条边的时候还有排序的时候会很麻烦#include#include#include#include#include#includeusing namespace std;int father[5001];int w[5001];int n,m,ans,tot;int x,y,z;st

2016-11-17 20:59:38 213

原创 重点算法总结

回溯算法总结:http://www.cnblogs.com/wuyuegb2312/p/3273337.html#intro贪心算法总结:http://blog.csdn.net/hero5201/article/details/51039455动态规划算法总结:http://blog.csdn.net/duxingstar/article/details/6032411二分答案总结:

2016-11-17 19:31:20 228

原创 动态规划基本模型(二)

区间DP例题:石子合并;先使用a[i]初始化每个石子的价值合并n个则需要先合并n-1个 子问题就是合并1-n个的最小值则合并l长度个的最小值为合并左结点到右结点的最小值;子问题为每个区间的合并最小值;使用k枚举每个区间;则有dp[i][j]=min(dp[i][j],dp[i][k]+dp[k+1][j]+合并这两段的和)使用sum[i]初始化每段的价值;for

2016-11-17 13:53:03 269

原创 背包模板

01背包取或不取 保证只选一次 倒序枚举剩余空间for (int i=1;i<=n;i++) for (int j=v;j>=c[i];j--) dp[j]=max(dp[j],dp[j-c[i]]+w[i]);完全背包可取无限次 正序枚举剩余空间for (int i=1;i<=n;i++) for (int j=c[i];j<=v;j++) dp[j]=max(d

2016-11-17 13:32:56 252

原创 动态规划基本模型(一)

#include#include#include#includeusing namespace std;int a[1001],b[1001],dp[10001];int n,ans,ans1;int main (){ cin>>n; for (int i=1;i<=n;i++) cin>>a[i]; for (int i=2;i<=n;i++) for (int j

2016-11-17 13:22:58 401

原创 匈牙利算法模板

二分图匹配模板#include#include#includeusing namespace std;int connect[1001][1001];int vis[10001];int girl[1001];int n,m,e,u,v,ans;int find(int x){ for (int j=1;j<=m;j++)//枚举每一个异侧结点 { if (conn

2016-11-17 12:56:06 187

原创 spfa模板

通过stl的queue实现的spfa(vector实现邻接表存图)本模板没有考虑存在两点不连通的情况如果需要判断则需要用到并查集或者遍历整个邻接表#include#include#include#include#includeusing namespace std;int d[10001];//存储起始点到点的最短距离 int v[10001];//标记是否已经入队 i

2016-11-16 13:43:00 210

原创 动态数组实现邻接表建图

#include#include#include#includeusing namespace std;struct edge//存储边连接的点和改边的权值 { int to,w;};vectormap[10001];//二维动态数组实现 int n,m;int x,y,z,k;int main (){ edge e; cin>>n>>m; for (int i=1

2016-11-16 10:41:54 417

原创 线性筛模板

洛谷爆内存了 然而并不想改#include#include#includeusing namespace std;int n,m;int isnotp[10000001],prim[10000001],cnt,check[10000001],xi;int primer (int x){ for (int i=2;i<=x;i++) { if (!isnotp[i]) pr

2016-11-15 16:46:01 185

原创 并查集

基本操作和模板#include#include#includeusing namespace std;int father[10001];int m,x1,y1;int find(int x)//寻找根节点并且压缩路径 { if (father[x]!=x) father[x]=find(father[x]);//递归寻找根节点 return father[x];}in

2016-11-15 16:21:47 243

原创 luogu【P1025】数的划分

思路:DP 经典问题数i划分成j份存在两种方案一个是划分出1的方案一种是不划分出1的方案则划分出1的方案可以视作将j个1划分到j个方案中 则f[i][j]+=f[i-j][j]若不划分出1则可以视作将j个1划分到1个方案中 则f[i][j]+=f[i-1][j-1]#include#include#includeusing namespace std;int f[100

2016-11-11 19:52:52 340

原创 luogu【P1192】台阶问题

思路:DP#include#includeusing namespace std;int n,k;int f[100001];int main (){ cin>>n>>k; for(int i=1;i<=k;i++) f[i]=1; for (int i=2;i<=n;i++) { for (int j=1;j<=k&&j<=i;j+

2016-11-08 17:19:00 216

原创 luogu试练场の简单的模拟

P1 铺地毯思路:以前一直是想用二维数组存了直接覆盖最后直接读后来发现直接判断坐标位置就可以了#include#include#includeusing namespace std;int xi[10001],yi[10001],xx[10001],yy[10001];int nx,ny,n;int check(int a,int b,int c,int d){ if (n

2016-11-05 09:28:21 219

原创 luogu【P1014】Cantor表

思路:模拟#includeusing namespace std;int main(){ int n; cin>>n; // 读入 int a[n],b[n],w=1,s=1,i; //定义换行器 for(i=1;i<=n;i++) { if(w==s) {w=1;s++;} // 记录行数

2016-11-04 21:28:59 285

原创 luogu【P1464】Function

思路:按题意写#include int book[21][21][21];int w(int a,int b,int c){ if(a<=0||b<=0||c<=0) return 1; if(a>20||b>20||c>20) return w(20,20,20); if(!book[a][b][c]){ if(a<b&&b<c)

2016-11-04 21:27:14 505

原创 luogu【P1426】小鱼会有危险吗

思路:一个while,水题#includeusing namespace std;double x,n,l,k=0;int main(){ cin>>n>>x;k=0;l=7.0;//设置初始值。 while(k<n-x)//当小鱼不危险时。 { k+=l;l*=0.98;//每次步数*0.98 } if(k+l>n+x)co

2016-11-04 21:11:22 1039

原创 luogu【1618】三连击(升级版)

思路:全排列函数+模拟#include#include#include#includeusing namespace std;int main(){ int a,b,c,p[10]={0,1,2,3,4,5,6,7,8,9}; cin>>a>>b>>c; int flag=0; do { int x=p[1]*100+p[2]*10+p[3],

2016-11-04 20:20:24 308

原创 luogu【P1478】陶陶摘苹果(升级版)

思路:加特判的一维01背包#include#include#include#includeusing namespace std;int w[5001];int dp[5001];int c[5001];int n,s,a,b,mn;int main (){ cin>>n>>s; cin>>a>>b; for (int i=1;i<=n;i++) { cin>>

2016-11-04 18:43:03 345

原创 进制转换(低精度)

并不是某道题其实只是心血来潮随便写的QwQ(2333我才不会说我想发二进制说说来装B)#include#include#include#includeusing namespace std;int primer(int a,int b)//快速幂将N进制转换成10进制 { int r=1,base=a; while(b) { if (b&1) r*=base; bas

2016-11-03 20:24:45 254

原创 P1013找啊找啊找GF

思路:多维01背包附加一个最小时间判断,QAQ转移方程写错好多次#include#include#include#includeusing namespace std;int rmb[101];//每个mm花费的rmb int rp[101];//rp int dp[105][105];//保存能撩的最多mm int dpt[101][101];//保存每个dp值需要的时间

2016-11-03 15:25:11 406

原创 P1012火柴棍等式

思路:打表+dfs#include#include#include#include#include#includeusing namespace std;int w[1001]={6,2,5,5,4,5,6,3,7,6};int a[1001];int b[5];int n,ans;int dfs(int step){ for (int i=0;i<=999;++i)

2016-11-02 17:18:57 196

原创 P1011传纸条

思路:详情见luogu传纸条QwQ出于尊重再次打了一次不想写解析了QwQ#include#include#include#include#include#includeusing namespace std;int a[101][101];int dp[51][51][51][51];int m,n;int main (){ cin>>m>>n; for (int i

2016-11-02 16:06:02 232

原创 P1010笨小猴

思路:水过好几遍的傻逼题= =我不会告诉你我还搞了大写转小写最后没答案还输出ans的笑话;#include#include#include#include#include#includeusing namespace std;int a[1001];string s;int maxn,minn;int prime(int n)//朴素判断质数 { if (n<2) re

2016-11-02 15:57:31 395

原创 P1008传球游戏

思路: f[j][i]表示第j个人第i次的方案数 则转移方程为f[j][i]=f[j+1][i-1]+f[j-1][i-1] (因为第i次的方案数的上一次从左边同学和右边同学传过来的方案数之和);由于同学们坐成一个环所以第一个和最后一个同学需要特判。#include#include#include#includeusing namespace std;int n,m,f[

2016-11-01 21:43:29 184

原创 快速幂模板

思路:二分+位运算#include#include#include#includeusing namespace std;int power(int a,int b){ int r=1,base=a;//r存结果,base存每一次运算的乘积 while(b!=0) { if (b&1) r*=base;//幂数二进制的最后一位如果为1则与base相乘 base*=

2016-11-01 20:01:22 168

原创 luogu【P1179】数字统计

思路:水题 晚自习结束前三分钟打的QwQ#include#include#includeusing namespace std;int ans;int div(int n){ int t; while(n) { t=n%10; n/=10; if (t==2) ans++; }}int main(){ int l,r; cin>>l>>r; for (i

2016-10-31 21:51:16 256

原创 luogu【P1706】全排列问题

思路:最近发现自己对dfs的理解不够深透于是写了一个最基础的dfs然后分析了一下QwQ#include#include#include#includeusing namespace std;int a[10001];int n;int v[10001];int dfs (int m)//一定要注意这个参数代表的是递归的层数 { if (m-1==n)//当递归层数足够且产生满足

2016-10-31 21:44:57 552 1

原创 P1007排座椅

思路:每当出现存在同一行有会交头接耳的同学我们就把他们用其中列数较小的一个截下所能阻止的学生对数++,在线处理(按照所有通道所能阻止的人数进行降序排序)完之后用一种贪心策略即选取前k和前l个通道可以满足决策最优化,即最后行列各需要四次快排(2333还好有sort黑科技)#include#include#include#include#includeusing namespace st

2016-10-31 16:37:25 294

原创 二分查找模板

思路:只有在有序序列中才有效(原理的原因),思路就是不断缩小范围,算法复杂度为O(logn),是许多高效算法和数据结构的基础#include#include#includeusing namespace std;int a[1001];int n;int binsearch (int g[],int m){ int l=1; int r=n; int mid; while

2016-10-29 21:40:46 181

原创 感谢lj对我的安(chao)慰(feng)

唉什么都不会连做人也比不上人家身为无数人的朋友同学在他们摔倒的时候我却说不出任何安慰的话语

2016-10-29 20:58:03 245

原创 再见,我的高中歌唱生涯

谁tm愿意喜欢你啊

2016-10-29 16:03:22 263

原创 luogu【P1008】三连击

思路:2333来水三连击了 打表大法好 来分高大上的题解:产生全排列函数+大暴力#include #include #include #include #include #include #include #include using namespace std;int main (){ vector v; for (int i=1;i<=9;i++)

2016-10-29 09:52:26 408

原创 luogu【P1007】独木桥

思路:此题数学气味颇浓 毕竟是递推题 由于一开始不知道初始面对方向 我们考虑是否方向不影响 事实是的确不影响(QwQ)因为如果两个人撞在一起(例如A和B)那么A将走完B回头走的路程(同理B也是) 因此两个人花掉的总时间是不受转向影响的 那么我们现在开始考虑最大最小的决策方案 很明显当坐标位于中点偏某一侧则向某一侧走时间必有最短 反之最长 那么递推方程就建立出来了 min=a[i] 但是由于短板

2016-10-29 09:34:25 276

原创 luogu【P1006】传纸条

思路:仔细看了看这不就是方格取数么?除了读入不一样 我就再敲了一遍方格取数 #include#include#include#includeusing namespace std;int dp[51][51][51][51];int w[51][51];int main (){ int m,n; cin>>m>>n; for (int i=1;i<=m;i++) f

2016-10-28 19:00:34 231

空空如也

空空如也

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

TA关注的人

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