- 博客(13)
- 资源 (5)
- 收藏
- 关注
原创 POJ 1016 Numbers That Count 模拟题目
本题没有多少技巧,就是考编程能力。其中的注意的地方有:1 数数字-基本算法,很多题目都会用上,本题利用Hash表计算每个数字出现的次数就可以,其中有个坑:注意大于9的数,多位数字转换成字符串2 map的运用,当然可以使用STL,如果直接手动实现,或者使用Trie算法实现,那么本题难度就大大增加了。3 简单的计算问题和读清楚题意,比如本题要求是大于15步,就需要额外处理的,不小心就掉坑里了。
2014-12-31 17:13:28 1291
原创 POJ 3616 Milking Time 动态规划法题解
任务安排类型的动态规划法计算。思路1:1 按照任务的结束时间排序2 填表,使用一维表即可,表的值表示以当前时间点为结束时间,得到的最大效率。那么就得到状态转换方程:arr[i] = max (arr[i], arr[mt[i].st]+mt[i].ef)其中mt[i].st代表当前任务的起止时间,mt[i].ef代表当前任务的效率。3 那么当当前计算的时间点不是某任务的结束时间,改如何处理呢?可以直接把之前计算得到的最大效率填上来就可以。4 还有最重要的处理特殊情况-很容易栽跟斗的地方: 如果两
2014-12-27 11:39:41 2011 2
原创 POJ 3450 Corporate Identity 求所有字符的最长公共子串
DescriptionBeside other services, ACM helps companies to clearly state their “corporate identity”, which includes company logo but also other signs, like trademarks. One of such companies is Inter
2014-12-19 13:58:55 1543
原创 Android百日程序:绘画程序-画手指路径
本程序实现在一个画布中,用手指画图的效果。需要使用的知识:1 Canvas 画布,动态保存更新当前画面2 Path 记录并画出手接触屏幕经过的路径如下面效果图:只需要按照默认设置新建一个项目,然后在输入java代码:package com.example.sugestures;import android.app.Activity;import android
2014-12-19 09:04:04 3152 2
原创 Android百日程序:嵌入Fragment
Fragment相当于一个小型activity,因为Fragment可以实现activity中所有的功能,不同的是Fragment可以嵌入activity,一个activity可以有多个Fragment,而且可以运行时根据需要切换Fragment,达到可以适应不同屏幕大小等目的需要。本章来看看如何在activity中嵌入Fragment的方法,有静态和动态方法的。静态方法就是使用x
2014-12-17 13:41:10 1460
原创 POJ 1088 滑雪
本题一般使用递归法+记忆搜索得到答案。这里使用一种新的方法:根据题目特点必须要从高到底,那么可以把所有值排序,然后从最小值的方格开始搜索,每次搜索相邻的四个方格是否可行,然后存储最大值;这样不使用递归也直接得到答案了。
2014-12-09 10:43:59 1397
原创 POJ 2367 Genealogical tree 拓扑排序
一个标准的拓扑排序题解。要点:1 查找没有父亲节点的点,先输出这些点2 使用一个数组,del[i]记录已经输出的点3 输出了的点不再计算在父亲节点中,循环第1步,直到输出所有点
2014-12-08 09:38:59 1472
原创 Android百日程序:高效载入大图片
问题:如果图片很大,全部载入内存,而显示屏又不大,那么再大的图片也不会提高视觉效果的,而且会消耗无谓的内存。解决办法就是根据实际需要多大的图片,然后动态计算应该载入多大的图片;但是因为不太可能图片大小和实际需要的大小一致,故此需要载入图片大小为一个2的某次方的值,而大于实际需要的大小。如图,载入一个微缩图大小为100*100新建一个项目,参考Google上的方法:h
2014-12-07 17:19:00 2047 2
原创 POJ 1577 Falling Leaves 二叉树操作
本题目首先给大家介绍了二叉树的知识,然后引入二叉排序树,感觉就像是入门题了,但是给出的问题却是从叶子节点开始给出,然后要求求这个二叉树的前序遍历顺序。一开始少看了排序树这两个字,怎么想都觉得不对,没有排序树的条件,只是普通二叉树的话,本题应该是无解的。但是多了排序树这个条件,那么本题又变得非常简单了,就是简单的二叉树插入操作就可以了。而且数据的确是很弱的,因为最多只有26个大写英文字母。就是考我们操作二叉排序树的知识。
2014-12-07 11:25:12 3031 1
原创 POJ 2499 Binary Tree 数学题解
本题名为二叉树,其实主要是考数学加速计算的方法。本题思路最简单就是从目标节点往根节点查找,那么效率就等于树高了;不过由于树高可能会极大,故此这样查找会超时。那么就在查找根节点的时候,把题目的+-法变成除法查找,就可以极大加速查找了,由原来的超时变成0ms过了。
2014-12-06 10:21:33 2276
原创 POJ 3214 Heap 动态规划法题解
DescriptionA (binary) heap is an array that can be viewed as a nearly complete binary tree. In this problem, we are talking about max-heaps.A max-heap holds the property that for each node tha
2014-12-05 11:54:53 1705
原创 POJ 3181 Dollar Dayz 动态规划法题解
本题也是一种背包问题,就是需要求出有多少种组合。本题的新意就是:1 利用两个long long数表示大数的高位和低位就能满足不溢出了2 高位和低位需要仔细计算好建模:dp[i][j]:表示计算当前i物品的时候有j钱币的时候有多少种组合。那么状态转换:dp[i][j] = dp[i-1][j] + dp[i][j-i]//dp[i-1][j]表示前一种物品计算出的组合数,也就是不买i物品的组合数, dp[i][j-i]表示空出i钱币购买i物品的组合数难点:仔细观察,会发现其实不单止不用二维数
2014-12-03 12:05:27 1483
原创 Android百日程序:Intent传递数据
上一遍是回传数据,当热Activity之间是可以利用Intent很方便地传递很多数据的。本章就两个Activity之间传递String和Int数据。1 主要界面:2 点击按钮之后,就进入第二个activity这个时候会利用Toast机制显示第一个activity传递什么String和Int给第二个activity。3 然后点击“return to main ac
2014-12-01 12:24:59 1344
OpenGL完美的心形
2014-05-28
第一人称3D镜头框架代码
2013-11-02
第一人称3D镜头类
2013-11-02
算法问题集合源文件 堆排序 吊桶排序 最大子段和等
2013-10-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人