摘要:
从1-n开始遍历每个元素,用一个辅助栈来记录到这个元素前有多少个非递减连续的个数,然后再从这个点开始往后找看有多少能和栈中的元素配对,记录最大值即可。这样可以使复杂度达到 O(n).吉哥系列故事——完美队形IITime Limit: 3000/1000 MS (Java/Others)Memory Limit: 65535/32768 K (Java/Others)Total Submission(s): 533Accepted Submission(s): 168Problem Description 吉哥又想出了一个新的完美队形游戏! 假设有n个人按顺序站在他的面前,他们的身高分别是h.. 阅读全文
摘要:
16*16的数独, 跟9*9的类似。。。SudokuTime Limit:10000MSMemory Limit:65536KTotal Submissions:3683Accepted:1799DescriptionA Sudoku grid is a 16x16 grid of cells grouped in sixteen 4x4 squares, where some cells are filled with letters from A to P (the first 16 capital letters of the English alphabet), as shown in 阅读全文
摘要:
和之前那道数独一样。。。 搜索很强大。只用了47msSudokuTime Limit:1000MSMemory Limit:65536KTotal Submissions:7108Accepted:2498DescriptionIn the game of Sudoku, you are given a large 9 × 9 grid divided into smaller 3 × 3 subgrids. For example, .2738..1..1...6735.......293.5692.8...........6.1745.364.......9518... 阅读全文
摘要:
第一次做数独的题目, 最纠结的是建矩阵无疑。。。 想了N久才把这个矩阵给弄好,真的是很麻烦。 但是确实DLX 好快,解数独几乎是秒杀。。。SudokuTime Limit:2000MSMemory Limit:65536KTotal Submissions:11405Accepted:5645Special JudgeDescriptionSudoku is a very simple task. A square table with 9 rows and 9 columns is divided to 9 smaller squares 3x3 as shown on the Figure 阅读全文
摘要:
其实是一道DLX的简单题, 可是我做了两天,虽然这两天做的很间断,但是我懂的了一些东西。并不是你算法对的,感觉跟别人的代码差不多就可以达到和别人一样的效果, 这题算法大家都一样但是写出的程序速度却相差有10倍。 我就是因为写的烂,然后一直TLE,一开始我以为是哪里死循环了,后面一直TLE,看了别人的代码,然后一点一点的修改,最后才能过。。。一定要注意自己代码的风格, 一些细节,能省就省,尤其是这种复杂度不定的搜索题, 更是要注意能省一点是一点!Treasure MapTime Limit:2 Seconds Memory Limit:32768 KBYour boss once had got 阅读全文
摘要:
其实比较简单的一道递推题。 当时我却没有什么想法真的是太失败了。。F[X] 表示前X个人,且最后一个选的是比k大的数 的总人数K[X] 表示前X个人,且最后一个选的是<=k 的总人数则F[X]=F[X-1]*(m-k)+K[X-1]*(m-k)K[X]=F[X-1]*k+K[X]*(k-1)构造出矩阵求解即可Choosing numberTime Limit:2 Seconds Memory Limit:65536 KBThere arenpeople standing in a row. And There aremnumbers, 1.2...m. Every one should 阅读全文
摘要:
终于把20xx的题全部终结,以前卡在这题上一直不敢下手,现在学了矩阵优化递推方程, 这个题也就手到擒来了。。。x[i] 表示i个字符A和C 的数量都为偶数,也就是我们要的答案y[i] 表示i个字符中A的数量为奇数,C 的数量为偶数z[i] 表示i个字符中A的数量为偶数,C 的数量为奇数k[i] 表示i个字符中A的数量为奇数,C 的数量也为奇数则x[i]=2*x[i-1]+y[i-1]+z[i-1]y[i]=2*y[i-1]+x[i-1]+k[i-1]z[i]=2*z[i-1]+x[i-1]+k[i-1]k[i]=2*k[i-1]+y[i-1]+z[i-1]然后构造出矩阵,快速幂就可以了&quo 阅读全文
摘要:
比赛的时候想了很久,但是没有想出来。 这题用线段树思路应该挺好想, 但是会复杂一些,而用这个方法简单又好写,但是确实比较难想到。。大牛的解题报告,很详细 http://blog.csdn.net/wh2124335/article/details/8739097威威猫系列故事——晒被子Time Li... 阅读全文
摘要:
看了算法导论, 发现了一种求最近点对的高效方法, 就是在合并操作时只找每个点(已经按y排好序)以下的6个点 。 这样就可以使复杂度变为O(n*logn*logn) ,但是这题我却没有发现有这个性质,用的是一种比较好的优化。RaidTime Limit:5000MSMemory Limit:65536KTotal Submissions:6865Accepted:2026DescriptionAfter successive failures in the battles against the Union, the Empire retreated to its last stronghold 阅读全文
摘要:
比较烦人的一道题目,看着题目都觉得很吓人,不过模拟题终究是模拟题, 耐心点还是可以过的。题意: 给出了一个3*3的方块,每个方块有上下左右四个颜色, 然后每次可以在一行上 左/右循环移一格, 或一列上 上/下循环移一格。 求最少操作次数使的3*3中相同颜色的块形成一个连通块。 因为只有9个方块,所以最多的状态数为9! , 10^6次方的复杂度还是可以接受的。 然后就是一系列比较复杂的变换,搜索。 耐心点还是没有问题的。 写了几个小时 ,1 A 吉哥系列故事——乾坤大挪移Time Limit: 2000/1000 MS (Java/Others)Memory Limit: 65535/32768 阅读全文