11 2013 档案

摘要:1、输入首先要想输入需要先包括:[java]view plaincopyimportjava.util.*;我们需要其中的Scanner类声明的对象来扫描控制台输入。针对A+B来说:[java]view plaincopyimportjava.util.*;publicclassMain{publi... 阅读全文
posted @ 2013-11-28 19:48 chenhuan001 阅读(595) 评论(0) 推荐(0) 编辑
摘要:原以为是用搜索做的题,想了好久都无法想到一个高效正确的解法。后面发现竟然这就是矩阵的应用! 碉堡!给定一个有向图,问从A点恰好走k步(允许重复经过边)到达B点的方案数mod p的值 ——选自matrix67把给定的图转为邻接矩阵,即A(i,j)=1当且仅当存在一条边i->j。令C=A*A,那么C(i,j)=ΣA(i,k)*A(k,j),实际上就等于从点i到点j恰好经过2条边的路径数(枚举k为中转点)。类似地,C*A的第i行第j列就表示从i到j经过3条边的路径数。同理,如果要求经过k步的路径数,我们只需要二分求出A^k即可。K -MistwaldTime Limit:2000MSMemor 阅读全文
posted @ 2013-11-13 21:36 chenhuan001 阅读(361) 评论(0) 推荐(0) 编辑
摘要:经典的一道DP题。题目明显是一道DP题,但是比赛的时候一个劲就在想怎么记录状态和转移。最后想到了一种n^3的方法,写了下,不出所料的超时了。看了别人的代码才发现竟然是先二分然后再进行DP,像这种思路应该会经常用啊。。。二分距离,DP判断是否可行。 然后这题的DP也是非常经典的,想了好久都想不通,最后站在最优解的情况下思考,才想通。状态转移方程:for(int i=1;i<=n;i++) { dp[i]=1; for(int j=1;j<i;j++) if(mabs(g[j]-g[i])<=(i-j)*s) d... 阅读全文
posted @ 2013-11-13 14:50 chenhuan001 阅读(203) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示