自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

uiiの技术随笔

关注Java,PHP,JavaScript,Linux,MySQL,MongoDB

  • 博客(20)
  • 资源 (6)
  • 收藏
  • 关注

原创 codeforces 217A Ice Skating

题意:加点,使图变成强连通图。做法:直接求出强连通分量个数,ans=连通数-1;#include #include#include#includeusing namespace std;bool gra[105][105];int vis[105],sign[105],time[105],t,ans;int n;vector >node;void dfs(int u){

2012-11-29 13:09:28 1013

原创 codeforces 144D Missile Silos spfa

题意:给定一张地图,可以在边和点上设立发射井,其中发射井到首都的距离必须等于l做法:十万个点,竟然可以求最短路,而且最后时间还只有区区125ms.可能是边太少的原因...图中的边可以分成两类,一种是最短路上的边,一种是普通边。若边(u,v)是v最短路上的边,这样要dis[v]>l并且dis[u]否则,只要当dis[u]#include#include#include#

2012-11-29 13:03:08 1119

原创 C2. Party

题意:额,只要注意each的意思做法:基本的并查集技术,只要理解了each的意思...#include#define LMT 2002using namespace std;int get[LMT],fs,father[LMT];int work(int u){ int x=u; while(x!=father[x]) x=father[x];

2012-11-27 23:31:38 894

原创 codeforces 232A Cycles 图论 贪心 思维

题意:在一个无相图中有N个长度为3 的回路,输出符合条件的图。注意此图的节点数不得超过100做法:贪心手法。点最多一百个,那么,要让每个点的作用都发挥出来。所有,可以模拟每次加入点所带来的影响,来确定,两个点是否要连接。#include #includeusing namespace std;int c[103],have[103],ans,k,ss;bool gra[103][1

2012-11-27 14:12:26 901

原创 codeforces 242C King's Path STL库

题意:在一个几乎无限大的棋盘上,有一个起点和终点。有一些格子是不可走的,一个问一个王从起点走向终点所需要的最小步数。王可以向八个周围的格子走。做法:最多才100W个点,BFS暴力。#include#include#include#include#define LMT 1000005using namespace std;//bfs,最短路也可用BFS暴力的//只有一百万个点,

2012-11-26 15:56:21 1290

原创 codeforces 246D. Colorful Graph

题意:一个图中,每个点被染成不同的颜色。同颜色的点构成集合中的等价类v(k),k为颜色的种类。现在又有一个集合q(k),代表某一个点的颜色为K,在它周围与它不同色的点。这里要注意的是1----2----3,当1,3的颜色相同时,不能重复计算2,因为是集合。如此下来,算出基数最小的集合q(k)。做法:用set模仿集合可以很好的解决重复问题#include #include#i

2012-11-25 22:45:05 1700

原创 C++中的虚析构函数,C++陷阱

#include //虚析构函数是在派生类转换成为基类时出现。//派生类默认可以转换成为基类using namespace std;class A{ public: virtual~A(){ cout<<"~A()"<<endl;}};class B:public A{ public: ~B(){ cout<<"~B()"

2012-11-22 21:56:20 509

原创 codeforces Codeforces Round #130 (Div. 2) B 208B Solitaire 记忆化搜索

题意:类似空挡接龙的游戏。设末尾堆编号为x,每一次可以与x-3或者x-1相和。两个头牌子可配的堆可以合成,求最后是否能够和成一堆。做法:暴力搜索不可行。所以DP,那么确定无后效性状态。每个堆相和时,只需考虑x-1,x-3堆的情况。于前面的情况无关。dp[sum][a][b][c]=dp[sum-1][sum-4][b][c]||dp[sum-1][c][a][b]。这里有tirck..

2012-11-22 20:19:31 1018

原创 codeforces 245C Game with Coins

题意:一堆编号由1-n的箱子,每次取三个箱子,编号为n,2*n,2*n-1,取出其中的一枚银币,问最少取多少次可把里面的钱去完。当有箱子无法取到时(比如n小于三,或者为偶数),输出负一。做法:贪心策略。远方的箱子取到的机会最少,可能只有一次,而且在去远方的箱子时,近端的箱子也能跟着收益,所以,从第n个箱子进行逆推。#include#define LMT 105//这个题目重要的是在删除

2012-11-22 10:59:56 944

原创 Codeforces Round #137 (Div. 2) 222E. Decoding Genome

题意:测火星人的基因。输入一串字符串,长度为n,这个字符串中,有些字符对是不允许出现的,问符合题意的串的个数。做法:b[i][0]=m*b[i-1][0]-sum(no);sum求的是在m个字母中每一个字母,以这个字母开头的字符对的数量的和。   b[i][x](x>0)=b[i-1][0]+sum(ok*dp[i][y])若一个序列为,那么ok[a][b]=-1;这样就可以敲代码了

2012-11-21 23:44:56 741

原创 hdu 4332 状态压缩的矩阵加速DP 谢sue神

题意:现在有无数的1*1*2的砖头,要垒成一个长度为N的烟囱。砖头可以竖起来,可以平着放,问题是当四块砖都平f放时,题目认为可以有两种情况。做法:用0代表空,1代表覆盖。模拟每个截面放置砖头的情况后,可以发现不管怎么放,1的个数总是偶数,这可以用来化简。由于放置的特殊性,其实截面可以抽象成一个首尾可以相互影响的8位二进制数。如此,考虑所有情况,进行判断。#include #inclu

2012-11-21 16:34:23 909

原创 codefroces 2B The least round way

题意:一个矩阵中写满数字,从左上都到左下,每次只能向下方和右方走,每次经过一点,就乘以那个点上的数。求一条路径,是最终结果末尾的零最少。做法:一般的路径DP。只要DP求出两条路径,一条获得的2最少,一条5最少,然后比较去其中值最小的一条。可惜,一开始写了个不必要的优化,时间加长,还容易错,以后这种没必要的事情还是别做了#include #include#define LMT 10000

2012-11-14 12:29:53 815

原创 POJ 3233

题意:就矩阵幂的和做法:线性代数课上有,单个矩阵也是可以当成一个矩阵中的元素的所以构建矩阵|A o|                                                 |A|                        |E E| 其中o 是零矩阵。,和矩阵|o|,在计算第一矩阵的n次幂之后再与第二个矩阵相乘,这样,就在第二个矩阵的o矩阵处,就是答案

2012-11-13 13:31:48 515

原创 hdu 2294 Pendant

题意:求序列数。这个序列中有k种珍珠,而珍珠一共也只有K种,这个序列的长度不小于1,不大于n.做法:建立状态 dp[i][j]=dp[i-1][j]*j+dp[i-1][j-1]*(k-j+1),而01000....           dp[i][0]  而ans=dp[i][0]+dp[i][1]+dp[i][2]....dp[i][n];可用累加的方法,算出ans,就是把t的长宽均变

2012-11-11 23:44:42 798

原创 codeforces 118D Caesar's Legions 背包问题

题意:求序列数。这个序列里不能有连续k1个footmen还有k2个horsemen。做法:这种有固定资源,并且有离散化消耗的,一定要忘背包上靠。#include#define mod 100000000#define LL long longLL dp[2][202][102];int main(void){ int n1,n2,k1,k2; int i,j,t;

2012-11-11 21:50:41 1666 3

原创 codeforces D. Distance in Tree

题意:在一颗数中找距离为K的点对数 以后确定状态之后,最后看看有什么属性是不用确定的。。#include#include#include#define LL long long#define LMT 50003using namespace std;LL dis[LMT][505];//SB,这里是500!!!!int next[LMT];int all,k,n;LL ans;

2012-11-10 20:21:10 764

原创 codeforces Another Problem on Strings 记录一个不慎

题意:输入一个二进制数,看其中有K个1 的字串数。组合数学的思想要多用啊...#include#include#define LMT 1000003//要有一个变大using namespace std;long long q[LMT],k;int head,tail;int main(){ int i=0,sum=0; char a; head=tail=

2012-11-10 10:58:48 625

原创 Warcraft III 守望者的烦恼

//注意到这是一个形如f[i]=a1*f[i-1]+a2*f[i-2]+...+ak[i-k];的方程,立刻就反应到可以使用矩阵乘法进行优化。//模仿了大神的做法...//虽然说可以不经过1,但是这是建立在闪烁技能上的,所以仍旧要从头走起#include #include#include#define mod 7777777#define LL __int64using names

2012-11-08 13:19:59 1061

原创 vijos 1049 送给圣诞夜的礼品

这题是基础了,无耐C++驾驭能力不高...线性代数也弱 //矩阵与置换之间的关系//不用写=//小心函数的本地指代//函数用完内存全释放//把指数想象成二进制数就可以理解了//单位矩阵别搞错了//time=0的时候彻底被坑了#include#includeusing namespace std;typedef class matrix{ public:

2012-11-07 21:38:24 909

原创 Codeforces Round #148 (Div. 2)

//B. Easy Tape Programming//网站崩溃,没办法,后来做的#include#include//提高查错能力啊//聪明的删除char order[202],ore[202];int start,end,l,p;int main(void){ int n,q,i,pre; char dp; int time[11]; sca

2012-11-05 21:29:17 547

NoSQL数据库之MongoDB源码和PPT

mongodb的详细介绍,从普通查询到分片还有代码示例

2014-07-28

浙江外国语学院 ACM入门资料

浙江外国语学院 ACM入门资料 包括:一个外校ppt,一个本校ppt,一本书《疯狂的程序员》&&<IT学生解惑真经> 谢谢...希望大家一起为了zisu acm努力

2012-08-30

AD603中英文资料(全)

压缩包里包括中英文资料8份pdf 以及与AD811组成的程控增益放大电路的原理图及pcb图

2012-07-22

A C M 常 用 代 码

与ACMer共享下浙大上古时期的模板 不过最好的模板是自己做的

2011-07-09

数据结构之 串 栈 队列

提供三个数据结构,串,队列,栈,队列有循环队列和链队列。rar格式解压即可用

2011-06-13

空空如也

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

TA关注的人

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