1
yangkeao Aug 16, 2014
wikioi上参见博弈,,很能锻炼思维。//这好像已经不是一个东西啦~~不过如果要求是锻炼思维也还是可以
|
2
exoticknight Aug 16, 2014
文章写得很好,算法渣渣表示也看得懂!
|
3
kmvan Aug 16, 2014 via Android
gcd是什么函数我已经看不懂了
|
5
lcj2class OP @exoticknight 好不敢当,只希望对大家多少有些启发
|
6
jok3r Aug 16, 2014
我感觉在OJ上刷题时遇见过类似的,
|
7
fishleen Aug 16, 2014 via iPhone
推荐MIT的教程Mathematics for Computer Science里的Number Theory,其中有详细证明为什么能得到X升的线性组合。只要有高中数学基础都能看懂(小学做过类似奥数题目也能看懂)。
CS学到后面都是算法了,没有离散数学基础很难学下去。 |
8
ruoyu0088 Aug 16, 2014
接下来可以试试三个水桶互相倒水。
|
9
Exin Aug 16, 2014
总结里面的代码用的是什么字体?
|
14
yangff Aug 16, 2014 via Android
dp[i][j]分别表示第一个桶iL水,第二个桶jL水这个状态能否达到。
然后转移就可以了。 |
15
yangff Aug 16, 2014 via Android
然后这个转移的过程就是欧几里德算法求gdc啦。。
|
16
GtDzx Aug 16, 2014
http://hihocoder.com 有一个活动叫"hiho一下",会按照一定的知识体系每周详细讲解一道算法题目,并且要求你写出正确的程序。你可以从第一周的题目开始跟着做。每周的题目结束之后,还会公布所有通过的用户的代码供你学习参考。
另外hihocoder明天刚好有一场模拟赛,是给参加google校招的同学准备的。题目难度接近google去年校招的水平,并且都不是那种需要特定算法/数据结构知识才能做的竞赛题,可以尝试一下。 |
21
pljhonglu Aug 16, 2014
见到校友~赞一个~
|
22
yangff Aug 16, 2014 via Android @lcj2class 你这样考虑,最开始的时候两个桶都是空的显然是可以的为1,
每个时刻有4种操作可以做,把某个桶装满,把一个桶的水倒进另一个桶。 直接搜索的话当然可以,但是你会发现,如果你已经知道ij这个状态的结果,就不用再去计算了,用数组记一下某个状态是否到达过就可以了,最后可以发现这个转移的过程其实就是在mod x意义下做扩展欧几里德。 |
24
asmore Aug 16, 2014
算法表述非常清晰~~
|
26
yhf Aug 16, 2014 via iPhone
acm里一般都会有这种题吧,描述题。
|
28
yangff Aug 16, 2014 via Android
http://codeforces.com/problemset/problem/343/A
这题和你这题做法差不多。。 |
29
heganj Aug 17, 2014
core.logic
|
30
bombless Aug 17, 2014
也许可以参考一下张景中的书…他研究的一个方向就是用程序证明几何命题。
|
31
monkeylyf Aug 17, 2014
gcd
|
34
tushiner Aug 17, 2014
弱弱的说,ACM里面不是有很多这种东东么。。。
|