12 2013 档案

摘要:题目链接:http://lightoj.com/volume_showproblem.php?problem=1011思路:最近的开始做dp了。。。很明显的一道状态压缩题,dp[n][state]表示前n行状态为state的最大值。 1 #include 2 #include 3 #include 4 #include 5 using namespace std; 6 7 int dp[17][1<<17]; 8 int n, num[17][17]; 9 10 int main()11 {12 int _case, t = 1;13 scanf("%d", & 阅读全文
posted @ 2013-12-29 21:53 ihge2k 阅读(227) 评论(0) 推荐(0)
摘要:题目链接:http://lightoj.com/volume_showproblem.php?problem=1214用java写大数果然是方便多了! 1 import java.math.BigInteger; 2 import java.util.*; 3 import java.io.*; 4 5 public class Main{ 6 public static void main(String[] args){ 7 Scanner cin = new Scanner(System.in); 8 int n = cin.nextInt();... 阅读全文
posted @ 2013-12-15 16:02 ihge2k 阅读(1762) 评论(0) 推荐(0)
摘要:今天碰到的求解阶乘的位数的公式,记上一笔:ans=(n*log(n/exp(1.0))+0.5*log(4*n*acos(0.0)))/log(base*1.0) + 1;其中base该运算在base进制下。 阅读全文
posted @ 2013-12-13 22:11 ihge2k 阅读(337) 评论(0) 推荐(0)
摘要:题目链接:http://lightoj.com/volume_showproblem.php?problem=1426思路:首先我们预处理出每一个"*"在某一方向上最终能到达的位置,这里我们可以用一个四维数组来记录next[i][j][k][2],然后首先判断"impossible"这种情况,我们可以对每个"*"进行dfs,看是否能够到达边界,如果存在某个“*”不能到达边界,那么直接就是"impossible“了。判断好这个之后就可以直接bfs求解了,这里我们用map,string >mp来判重,我们可以枚举4个方向, 阅读全文
posted @ 2013-12-11 22:15 ihge2k 阅读(699) 评论(0) 推荐(0)
摘要:题目链接:http://lightoj.com/volume_showproblem.php?problem=1377思路:这道题只要处理好遇到"*"这种情况就可以搞定了。我们可以用一个vector向量来记录所有的“*”,然后用一个3维数组来判重,并且对于每个状态都加一个标记,判断是否需要立刻转移,值得注意的是转移过后,vector应该立刻清空。 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7 using namespace std; 8 9 const int MAXN =... 阅读全文
posted @ 2013-12-10 18:22 ihge2k 阅读(255) 评论(1) 推荐(0)
摘要:题目链接:http://lightoj.com/volume_showproblem.php?problem=1412思路:好久没写题解了,有点手生,这题从昨天晚上wa到现在终于是过了。。。思想其实很简单,就是预处理出每一块的最长直径,然后每次询问的时候直接查询就可以了。 1 #include 2 #include 3 #include 4 #include 5 #include 6 using namespace std; 7 8 const int MAXN = (100000 + 100); 9 typedef pairPair;10 11 vectorg[MAXN];12 vecto. 阅读全文
posted @ 2013-12-09 16:54 ihge2k 阅读(331) 评论(0) 推荐(0)
摘要:一些常用的vim编辑器快捷键:h」、「j」、「k」、「l」,分别控制光标左、下、上、右移一格。按「ctrl」+「b」:屏幕往“后”移动一页。按「ctrl」+「f」:屏幕往“前”移动一页。按「ctrl」+「u」:屏幕往“后”移动半页。按「ctrl」+「d」:屏幕往“前”移动半页。按数字「0」:移到文章的开头。按「G」:移动到文章的最后。按「$」:移动到光标所在行的“行尾”。按「^」:移动到光标所在行的“行首”按「w」:光标跳到下个字的开头按「e」:光标跳到下个字的字尾按「b」:光标回到上个字的开头按「#l」:光标移到该行的第#个位置,如:5l,56l。「x」:每按一次,删除当前字符。「#x」:例 阅读全文
posted @ 2013-12-01 14:16 ihge2k 阅读(8815) 评论(2) 推荐(0)
摘要:非常简单的三行命令就搞定了!$ sudo add-apt-repository ppa:webupd8team/java$ sudo apt-get update$ sudo apt-get install oracle-java7-installer然后在终端运行一下java –version,如果有一下提示:则JDK说明配置成功。 阅读全文
posted @ 2013-12-01 10:10 ihge2k 阅读(148) 评论(0) 推荐(0)