自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

yp_2013的博客

毕竟玩物而已

  • 博客(10)
  • 收藏
  • 关注

原创 hdu 5410

写法一 滚动数组+dpdp[c][i][0] 表示花了i元不取当前这种物品,dp[c][i][1] 表示花了i元取过当前这种物品#include<stdio.h> #include<string> #include<map> #include<vector> #include<cmath> #include<stdlib.h> #include<string.h> #include<algorith

2016-05-31 19:40:11 293

原创 hdu 5400

开个map表示每个数组单独是否已经被算过了,注意自增和下标的前移以及回退,不要死循环~#include<bits/stdc++.h> using namespace std; #define ll long long int n,d1,d2; const int maxn=1e5+10; int a[maxn];map<int,int>m; int main(){ while(scanf("

2016-05-31 10:25:43 267

原创 hdu 5372 离散化加树状数组

注意离散化的时候是对左右端点一起离散化的,所以maxn要开成2倍的~#include<bits/stdc++.h> using namespace std; #define ll long long const int maxn=2e5+10; struct node{ int op,l,r; }a[maxn]; int c1[maxn<<1],c2[maxn<<1]; int lowbit

2016-05-31 08:57:43 351

原创 manacher板子

hdu5371 http://acm.hdu.edu.cn/showproblem.php?pid=5371#include <cstdio> #include <iostream> #include <algorithm> #define MAXN 100010 using namespace std;int n; int d[MAXN]; int st[MAXN*2]; int p[MAXN*

2016-05-30 18:12:31 380

原创 qinghua大乱斗

#include <bits/stdc++.h>using namespace std;using ll = long long;int n; multiset<int> s;void EXEC() { ll ans = 0; scanf("%d", &n); s.clear(); for (int i = 1; i <= n; ++i) { int

2016-05-25 11:32:06 404

原创 qinghua大乱斗C

题意: 维护一个数列,支持两种操作 1.给一个区间所有数加v 2.询问一个区间内所有余弦的和维护一个余弦和,一个正弦和即可,cosv sinv提出,然后打标记即可~#include<set> #include<ctime> #include<cmath> #include<cstdio> #include<vector> #include<cstdlib> #include<cstring>

2016-05-25 11:01:49 316

原创 hdu 5700 区间交

#include<cstdio> #include<cstring> #include<algorithm> #include<set> #include<map> #include<vector> #define rep(i,j,k) for(int i=(int)j;i<=(int)k;i++) #define per(i,j,k) for(int i=(int)j;i>=(int)k;i--)

2016-05-24 22:47:49 341

原创 hdu 5692 Snacks

线段树区间修改和取最值,首先根据dfs序,确立每个点应该对应的区间。#include<bits/stdc++.h> using namespace std; #pragma comment(linker, "/STACK:1024000000,1024000000") #define ll long long #define pl c<<1 #define pr (c<<1)|1 #define

2016-05-24 20:49:01 607

原创 hdu 5694 BD String

这道题收获还是蛮大的,首先思路上肯定是递归,因为上下状态都是关联的,然后给的2的100次方是没有用的,因为只问到2的62次方, 然后初始化的是每一个n的左右端点对应值,然后对于每一个区间都往上面进行拆分。 具体下标举个例子讨论一下就好了,调试的时候哪块不对可以加判断条件调,要是错了,就说明肯定是某个小下标打错了,在复制上面代码的时候一定要注意这一点。#include<bits/stdc++.h>

2016-05-24 11:42:01 563

原创 矩阵快速幂模板

#include <cstdio> #include <cstring> #include <algorithm> using namespace std;int x, k, c; long long m;struct Mat { int v[2][2]; Mat() {memset(v, 0, sizeof(v));} Mat operator * (const Mat&

2016-05-23 20:15:42 248

空空如也

空空如也

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

TA关注的人

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